# All Posts
## 2026
- [Porting My 1996 Pascal/Delphi Calculator to Rust (CLI + MCP)](https://code.dblock.org/2026/09/24/porting-my-1996-pascal-calculator-to-rust.html)

- [Using AI Effectively in Technical Writing](https://code.dblock.org/2026/09/23/using-ai-effectively-in-technical-writing.html)

- [Serving Markdown for AI Agents, Now as a Jekyll Plugin](https://code.dblock.org/2026/09/19/serving-markdown-with-a-jekyll-plugin.html)

- [In Meetings, Raise Hands Before Reading](https://code.dblock.org/2026/09/17/in-meetings-raise-hands-before-reading.html)

- [Porting a Discord Bot to Microsoft Teams, Entirely With AI](https://code.dblock.org/2026/09/16/porting-strata-to-microsoft-teams-entirely-with-ai.html)

- [Standardizing Exception Message Style in Ruby](https://code.dblock.org/2026/09/05/standardizing-exception-message-style-in-ruby.html)

- [Adventures in Daylight Saving, Norfolk Island, and Time Zone Math (in Ruby)](https://code.dblock.org/2026/08/28/adventures-in-daylight-saving-norfolk-island-and-time-zone-math-in-ruby.html)

- [Benchmarks Are Free Now](https://code.dblock.org/2026/08/15/benchmarks-are-free-now.html)

- [Ruby Instance Variables Are Not Inherited (and Why That Breaks Your DSL)](https://code.dblock.org/2026/08/14/instance-variables-are-not-inherited-and-why-that-breaks-your-dsl.html)

- [Generating AI Descriptions of Automated Pull Requests](https://code.dblock.org/2026/08/11/generating-ai-descriptions-of-automated-pull-requests.html)

- [Coding with AI Agents is Now a Baseline Expectation for Managers](https://code.dblock.org/2026/05/05/coding-with-ai-agents-is-now-a-baseline-expectation-for-managers.html)

- [How I Made $360 by Serving Markdown to A.I. agents from My Jekyll Blog](https://code.dblock.org/2026/04/11/how-i-made-360-dollars-by-serving-markdown-from-my-jekyll-blog.html)

- [Opening Proprietary Code to Contributors Checklist](https://code.dblock.org/2026/04/08/opening-proprietary-code-to-contributors-checklist.html)

- [AI Slop: A Slack API Rate Limiting Disaster](https://code.dblock.org/2026/03/12/ai-slop-a-slack-api-rate-limiting-disaster.html)

- [Right-Sizing Engineering Teams for AI](https://code.dblock.org/2026/03/11/right-sizing-engineering-teams-for-ai.html)

- [The Golden Ratio of Manager to IC](https://code.dblock.org/2026/02/04/the-golden-ratio-of-manager-to-ic.html)

- [Serving Markdown for AI Agents in Jekyll](https://code.dblock.org/2026/01/15/serving-markdown-for-ai-agents.html)


## 2025

- [Turning Hypermedia APIs into MCPs](https://code.dblock.org/2025/09/18/turning-hypermedia-apis-into-mcps.html)

- [Using AI to Reduce the Burden of Status Reporting](https://code.dblock.org/2025/08/29/using-ai-to-reduce-the-burden-of-status-reporting.html)

- [How to Disagree and Commit like Switzerland](https://code.dblock.org/2025/08/03/how-to-disagree-and-commit-like-switzerland.html)

- [Don't Tell Engineers What to Do](https://code.dblock.org/2025/07/30/dont-tell-engineers-what-to-do.html)

- [Using Claude Code with Google Sheets](https://code.dblock.org/2025/07/30/using-claude-code-with-google-sheets.html)

- [I Failed to Implement the Diameter of a Binary Tree in a Coding Interview](https://code.dblock.org/2025/06/21/i-failed-to-implement-the-diameter-of-a-binary-tree-in-a-coding-interview.html)

- [Using Claude-Swarm to Upgrade Ruby Projects](https://code.dblock.org/2025/06/21/using-claude-swarm-to-upgrade-ruby-projects.html)

- [Pros and Cons of Going from Individual Contributor Back to Manager](https://code.dblock.org/2025/05/18/the-pros-and-cons-of-going-from-ic-back-to-management.html)

- [Executing Structured A.I. Workflows with Shopify Roast](https://code.dblock.org/2025/05/10/executing-structured-ai-workflows-with-shopify-roast.html)

- [Apologizing for My Obsessiveness Over Punctuation](https://code.dblock.org/2025/04/05/apologizing-for-my-obsessiveness-over-punctuation.html)

- [Leaving Amazon](https://code.dblock.org/2025/02/10/leaving-amazon.html)

- [Should You Work on Weekends?](https://code.dblock.org/2025/01/20/should-you-work-on-weekends.html)

- [Meeting Open Source Users Where They Are](https://code.dblock.org/2025/01/08/meeting-open-source-users-where-they-are.html)


## 2024

- [Adding a Spell Checker to a Jekyll Blog](https://code.dblock.org/2024/12/30/adding-a-spell-checker-to-a-jekyll-blog.html)

- [I Participated in 2882 Meetings in 5 Years](https://code.dblock.org/2024/12/20/i-participated-in-2882-meetings-in-5-years.html)

- [Do Not Fix Bugs Reported in Your Open Source Projects](https://code.dblock.org/2024/12/19/do-not-fix-bugs-reported-in-your-open-source-projects.html)

- [Harvesting the Low Hanging Fruit in Open Source Projects](https://code.dblock.org/2024/12/18/harvesting-the-low-hanging-fruit-in-open-source-projects.html)

- [How to Grow Open-Source Contributors and Maintainers](https://code.dblock.org/2024/12/14/how-to-grow-open-source-contributors-and-maintainers.html)

- [Creating an OpenSearch Cluster with Dangling Indexes](https://code.dblock.org/2024/11/21/creating-an-opensearch-cluster-with-dangling-indexes.html)

- [Safely Passing Ruby Variables to JavaScript in ERB](https://code.dblock.org/2024/10/30/safely-passing-ruby-variables-to-javascript-in-erb.html)

- [OpenSearch Project Joins the Linux Foundation](https://code.dblock.org/2024/09/17/opensearch-joins-the-linux-foundation.html)

- [Enumerating DigitalOcean Apps with a Deprecated Ubuntu 18 Stack](https://code.dblock.org/2024/07/24/doctl-stack-deprecation-notice.html)

- [Fixing Bugs in the OpenSearch API Documentation using API Spec Tests](https://code.dblock.org/2024/07/12/fixing-bugs-in-opensearch-api-documentation-using-api-spec-tests.html)

- [Using OpenSearch Cat API Response Formats](https://code.dblock.org/2024/07/02/using-opensearch-cat-api-response-formats.html)

- [Writing a Channel Slack Bot with Granular Permissions](https://code.dblock.org/2024/06/30/writing-a-channel-slack-bot.html)

- [Adding eslint and Auto-Fixing an Existing TypeScript Project](https://code.dblock.org/2024/04/23/adding-eslint-and-autofixing-an-existing-typescript-project.html)

- [Commenting on Pull Requests in GitHub Actions](https://code.dblock.org/2024/04/19/commenting-on-pull-requests-in-github-actions.html)


## 2023

- [Making Raw JSON REST Requests to OpenSearch](https://code.dblock.org/2023/10/16/making-raw-json-rest-requests-to-opensearch.html)

- [How to ingest a PDF document into OpenSearch with the ingest-attachment plugin](https://code.dblock.org/2023/09/29/how-to-ingest-a-pdf-document-into-opensearch-with-ingest-attachment.html)

- [Writing OpenSearch Plugins and Extensions (in Python)](https://code.dblock.org/2023/09/29/writing-opensearch-plugins-and-extensions.html)

- [Changing the default admin password in OpenSearch](https://code.dblock.org/2023/08/08/changing-the-default-admin-password-in-opensearch.html)

- [Getting started with Vector DBs in Python](https://code.dblock.org/2023/06/16/getting-started-with-vector-dbs-in-python.html)

- [Triggering CI from Pull Requests and Force Pushes in GitHub Actions](https://code.dblock.org/2023/04/29/triggering-ci-from-pull-requests-and-force-pushes-in-github-actions.html)

- [Backing up DigitalOcean MongoDB to Dropbox](https://code.dblock.org/2023/01/29/backing-up-digital-ocean-mongodb-to-dropbox.html)

- [Migrating from Dokku to DigitalOcean Apps](https://code.dblock.org/2023/01/15/migrating-from-dokku-to-digital-ocean-apps.html)


## 2022

- [Programming Languages in 2022](https://code.dblock.org/2022/12/27/programming-languages.html)

- [Managing GitHub Notifications in GMail](https://code.dblock.org/2022/08/08/managing-github-notifications-in-gmail.html)

- [Making AWS SigV4 Authenticated Requests to Amazon OpenSearch](https://code.dblock.org/2022/07/11/making-sigv4-authenticated-requests-to-managed-opensearch.html)

- [A Year Working on OpenSearch (2.0)](https://code.dblock.org/2022/06/05/a-year-working-on-opensearch-2.0.html)


## 2021

- [How I Learned Rust by Accident](https://code.dblock.org/2021/09/03/how-i-learned-rust-by-accident.html)

- [Generating a Task Matrix by Looping over Repo Files with GitHub Actions](https://code.dblock.org/2021/09/03/generating-task-matrix-by-looping-over-repo-files-with-github-actions.html)

- [Automating Code Changes via GitHub Actions Making Pull Requests](https://code.dblock.org/2021/08/13/automating-code-changes-with-github-actions-making-pull-requests.html)

- [How to run GitHub Actions Locally using Act](https://code.dblock.org/2021/06/15/running-github-actions-locally-using-act.html)

- [To Wrap or Not to Wrap in Markdown?](https://code.dblock.org/2021/06/07/to-wrap-or-not-to-wrap-in-markdown.html)

- [Walking Ethereum Transaction Logs to Find Lost Robbies w/Etherscan API](https://code.dblock.org/2021/04/27/walking-ethereum-transaction-logs-to-find-lost-robbies-using-etherscan-api.html)

- [Adding Work E-Mail to a GPG Key and Signing Git Commits](https://code.dblock.org/2021/04/16/adding-work-email-to-a-gpg-key-and-signing-git-commits.html)

- [How I Minted My First Generative Art NFT](https://code.dblock.org/2021/03/20/how-i-minted-my-first-generative-art-nft.html)


## 2020

- [How to tell an Engineer to avoid the weasel word "like"](https://code.dblock.org/2020/12/28/how-to-tell-an-engineer-to-avoid-the-weasel-word-like.html)

- [Migrating Classic Slack Ruby Bots to Granular Permissions](https://code.dblock.org/2020/11/30/migrating-classic-slack-ruby-bots-to-granular-permissions.html)

- [Dup, Don't Modify Input Hash Parameters in Ruby](https://code.dblock.org/2020/11/11/dup-dont-modify-input-hash-parameters-in-ruby.html)

- [Keeping a CHANGELOG at Work](https://code.dblock.org/2020/09/01/keep-a-changelog-at-work.html)

- [Calling a GraphQL API in Redwood.js](https://code.dblock.org/2020/08/27/calling-a-graphql-api-in-redwood-js.html)

- [Comparing Version Numbers in Ruby](https://code.dblock.org/2020/07/16/comparing-version-numbers-in-ruby.html)

- [Using Bash Parameter Expansion for Conditionals in GitHub Actions](https://code.dblock.org/2020/06/24/using-bash-parameter-expansion-for-conditionals-in-github-actions.html)

- [I've Asked You to Become an Open-Source Project's Co-Maintainer](https://code.dblock.org/2020/06/08/i-ve-asked-you-to-become-an-open-source-project-co-maintainer.html)

- [Writing a New OpenWeatherMap.org API Ruby Client](https://code.dblock.org/2020/05/17/writing-a-new-openweather-ruby-client.html)

- [Working with AWS SDK for PHP and Data Exchange](https://code.dblock.org/2020/03/16/working-with-aws-php-sdk-and-data-exchange.html)

- [Working with AWS SDK for C++ and Data Exchange](https://code.dblock.org/2020/03/06/working-with-aws-cpp-sdk-and-data-exchange.html)

- [Restoring Data into a MongoDB Dokku Container](https://code.dblock.org/2020/01/20/mongorestoring-data-into-dokku-mongodb.html)


## 2019

- [Writing DotNet Code on a Mac, No Administrator Privileges Required](https://code.dblock.org/2019/12/17/dotnet-on-mac-osx-without-admin-privileges.html)

- [Pros and Cons of Going from Management Back to Individual Contributor](https://code.dblock.org/2019/11/17/the-pros-and-cons-of-going-from-management-back-to-ic.html)

- [Building AWS Data Exchange and the Value of Simple Ideas at Scale](https://code.dblock.org/2019/11/13/aws-data-exchange.html)

- [Take an Incremental, Agile Approach to Scheduling Your 1:1s](https://code.dblock.org/2019/08/07/take-an-incremental-agile-approach-to-scheduling-your-1-on-1s.html)

- [Asserting Existence with Mocha, Chai and TypeScript Strict Null Checks](https://code.dblock.org/2019/07/18/assert-not-null-undefined-with-mocha-and-strict-null-checks.html)

- [Handling of HTTP Headers in Grape with Rack and Rails](https://code.dblock.org/2019/07/06/handling-of-http-headers-in-grape-rack-rails.html)

- [Getting Started with Typescript](https://code.dblock.org/2019/07/04/getting-started-with-typescript.html)

- [Day 1 at Amazon Web Services & Principal Engineer Interviewing Tips](https://code.dblock.org/2019/05/20/day-one-at-amazon-aws-principal-engineer-interviewing.html)

- [Building the Artsy Open-Source Engineering Brand](https://code.dblock.org/2019/05/11/building-an-open-source-engineering-brand.html)

- [Rebooting Vestris.com](https://code.dblock.org/2019/05/11/rebooting-vestris-dot-com.html)

- [Reflecting on 8 Years Building Artsy](https://code.dblock.org/2019/05/01/reflecting-on-eight-years-building-artsy.html)

- [How to BCC](https://code.dblock.org/2019/04/13/how-to-bcc.html)

- [Using Strava Webhook Events API](https://code.dblock.org/2019/04/13/using-strava-webhook-events-api.html)

- [How to Hire a VP of Engineering](https://code.dblock.org/2019/04/08/how-to-hire-a-vp-of-engineering.html)

- [How to Divide CTO and VP of Engineering Responsibilities](https://code.dblock.org/2019/03/08/how-to-divide-cto-and-vp-of-engineering-responsibilities.html)

- [The Art Market 1.0, University of Zurich](https://code.dblock.org/2019/03/07/art-market-one-point-o.html)

- [Solving Slack-Side Disconnects in slack-ruby-client](https://code.dblock.org/2019/03/04/solving-slack-side-disconnects-in-slack-ruby-client.html)


## 2018

- [Writing a New Strava API Ruby Client](https://code.dblock.org/2018/11/27/writing-a-new-strava-api-ruby-client.html)

- [Dealing with Strava API OAuth Token Migration](https://code.dblock.org/2018/11/17/dealing-with-strava-api-token-migration.html)

- [Implementing Geolocation with a Custom GraphQL Scalar Type in Ruby](https://code.dblock.org/2018/09/04/implementing-geo-location-with-a-custom-graphql-scalar-type-in-ruby.html)

- [Storing Timestamps in MongoDB with Mongoid](https://code.dblock.org/2018/08/25/storing-timestamps-in-mongodb-with-mongoid.html)

- [Please Pay Me to Read Your Email, for Charity](https://code.dblock.org/2018/08/24/please-pay-me-to-read-your-email-for-charity.html)

- [Prompting for Github Credentials in Ruby](https://code.dblock.org/2018/08/23/prompting-for-github-credentials-in-ruby.html)

- [Finding a Github User's E-Mail Address](https://code.dblock.org/2018/08/15/finding-a-github-users-email-address.html)

- [Grouping and Aggregating Weekly in MongoDB](https://code.dblock.org/2018/08/05/grouping-and-aggregating-weekly-with-mongodb.html)

- [Passing The Relay Environment Through React Navigation](https://code.dblock.org/2018/08/04/passing-the-relay-environment-through-react-navigation.html)

- [Enabling Relay-Style Mutations and Pagination](https://code.dblock.org/2018/08/03/enabling-relay-style-mutations-and-pagination.html)

- [Warning: Encountered two children with same key](https://code.dblock.org/2018/08/02/encountered-two-children-with-the-same-key.html)

- [Wiring Up a React Native Client to a Rails GraphQL Server](https://code.dblock.org/2018/08/01/wiring-up-a-react-native-client-to-a-rails-graphql-server.html)

- [Implementing a Ticking Clock Timer in React Native](https://code.dblock.org/2018/07/31/react-native-clock-timer.html)

- [Adding and Removing List Items in React Native](https://code.dblock.org/2018/07/30/add-remove-list-items-react-native.html)

- [Implementing a Toggle Button in React Native](https://code.dblock.org/2018/07/29/react-native-toggle-button.html)

- [React Native Hello World](https://code.dblock.org/2018/07/28/react-native-hello-world.html)

- [Installing and Upgrading MongoDB in Dokku](https://code.dblock.org/2018/07/27/installing-and-upgrading-mongodb-in-dokku.html)

- [Christie's Art + Tech Summit: Exploring Blockchain](https://code.dblock.org/2018/07/17/christies-art-tech-summit-exploring-blockchain.html)

- [Slava: a Slack Bot for Strava](https://code.dblock.org/2018/04/03/slava-slack-bot-for-strava.html)

- [How to Write a Great CTO Job Description](https://code.dblock.org/2018/03/17/how-to-write-a-great-cto-job-description.html)

- [In Conversation with Andrew Russeth, ARTNews](https://code.dblock.org/2018/03/08/andrew-russeth-brunchwork.html)

- [Enabling SSL on Github Pages](https://code.dblock.org/2018/03/07/enabling-ssl-on-github-pages.html)

- [Auto-Publishing Strava Runs to Github Pages](https://code.dblock.org/2018/02/17/auto-publishing-strava-runs-to-github-pages.html)

- [State of the Art Podcast: How Art Will Make Us Human](https://code.dblock.org/2018/02/17/state-of-the-art-podcast.html)


## 2017

- [Google Finance Web API Ruby Client](https://code.dblock.org/2017/12/30/google-finance-ruby-client.html)

- [Sotheby's Institute: Mass Appeal - Tech's New Role in Art Collecting and Fundraising Panel](https://code.dblock.org/2017/11/07/sothebys-institute-mass-appeal-tech-new-role-in-art-collecting-and-fundraising.html)

- [Generating and Handling Errors in GraphQL in Ruby](https://code.dblock.org/2017/10/30/generating-and-handling-errors-in-graphql-in-ruby.html)

- [How To Do Startup Technical Due Diligence](https://code.dblock.org/2017/10/29/how-to-do-startup-technical-due-diligence.html)

- [Past, Present and Future of Art & Technology Panel at HG Contemporary](https://code.dblock.org/2017/10/29/past-present-future-of-art-and-technology-panel-at-hg-contemporary.html)

- [Building and Consuming a GraphQL API with Ruby on Rails](https://code.dblock.org/2017/10/23/building-and-consuming-a-graphql-api-in-ruby-on-rails.html)

- [Artsy Overview for Coalition for Queens and Q&A](https://code.dblock.org/2017/10/10/artsy-overview-for-coalition-for-queens-and-q-and-a.html)

- [Introducing S'Up for Slack Teams](https://code.dblock.org/2017/08/21/introducing-sup-for-slack.html)

- [The Future of Art (Market) on the Blockchain](https://code.dblock.org/2017/07/11/the-future-of-the-art-market-on-the-blockchain.html)

- [A Curriculum for Teaching how to Solve a 3x3 Rubik's Cube](https://code.dblock.org/2017/07/03/solving-a-3x3-rubiks-cube.html)

- [Grape Framework 1.0 Released](https://code.dblock.org/2017/07/03/ruby-grape-1.0-released.html)

- [Writing Data to Amazon S3 from Apache Spark](https://code.dblock.org/2017/04/27/writing-data-to-amazon-s3-from-apache-spark.html)

- [The Future of Art](https://code.dblock.org/2017/04/07/the-future-of-art.html)

- [Getting Started with Spark, Hadoop, HDFS and Hive](https://code.dblock.org/2017/04/02/getting-started-with-spark-hadoop-hdfs-hive.html)

- [What's the simplest way to parse JSON in Scala?](https://code.dblock.org/2017/03/21/whats-the-simplest-way-to-parse-json-in-scala.html)

- [The Demonic Possession of Hashie::Mash](https://code.dblock.org/2017/02/24/the-demonic-possession-of-hashie-mash.html)

- [Building a Simple Alexa Skill in Node.js (Live Code)](https://code.dblock.org/2017/02/16/building-a-simple-alexa-skill-live-code.html)

- [Installing, Starting and Waiting for ElasticSearch in Travis-CI](https://code.dblock.org/2017/02/10/installing-starting-and-waiting-for-elasticsearch-in-travis-ci.html)

- [Building an Alexa Skill to Play Your Podcast](https://code.dblock.org/2017/02/09/alexa-skill-to-play-your-podcast.html)

- [The AlexaJS Community Organization](https://code.dblock.org/2017/01/16/the-alexa-js-community-organization.html)


## 2016

- [Art Basel Miami 2016: The Art World Is Officially Online](https://code.dblock.org/2016/12/22/the-art-is-officially-online.html)

- [Hacking on Multiple Amazon Echos (Alexa)](https://code.dblock.org/2016/12/15/hacking-on-multiple-amazon-echo-alexas.html)

- [MIT Hacking Arts 2016 Hackathon](https://code.dblock.org/2016/11/20/mit-hacking-arts-2016-hackathon.html)

- [MIT Hacking Arts 2016 Conference](https://code.dblock.org/2016/11/19/mit-hacking-arts-2016-conference.html)

- [Interview at NASDAQ](https://code.dblock.org/2016/10/31/interview-at-nasdaq.html)

- [Use Open-Source to Pivot Around Your Hiring Problem](https://code.dblock.org/2016/10/31/use-open-source-to-pivot-around-your-hiring-problem.html)

- [The Mongoid Community Organization](https://code.dblock.org/2016/09/07/the-mongoid-community-org.html)

- [Phone Screens are Harmful and The Benefits of the Informational Interview](https://code.dblock.org/2016/08/30/phone-screens-are-harmful-and-the-benefits-of-the-informational-interview.html)

- [Democratizing the Art World Without Pitchforks](https://code.dblock.org/2016/08/12/democratizing-the-art-world-without-pitchforks.html)

- [Obj-C Core Data View](https://code.dblock.org/2016/07/13/obj-c-core-data.html)

- [Very Slow MongoDB in Development and Test](https://code.dblock.org/2016/06/03/very-slow-mongodb-in-development-and-test.html)

- [Should a CTO be technical?](https://code.dblock.org/2016/05/16/should-a-cto-be-technical.html)

- [How To Write Your Code Bootcamp Academy Resume](https://code.dblock.org/2016/04/26/how-to-write-your-bootcamp-academy-resume.html)

- [A Directory Structure for OSS and Work Github Clones](https://code.dblock.org/2016/03/25/a-directory-structure-for-oss-and-work-github-clones.html)

- [Your First Slack Bot Service (Video)](https://code.dblock.org/2016/03/11/your-first-slack-bot-service-video.html)

- [Backing up MongoDB Databases in Dokku Containers to Dropbox](https://code.dblock.org/2016/02/15/backing-up-mongodb-databases-in-dokku-containers-to-dropbox.html)

- [What do Software Engineers Do?](https://code.dblock.org/2016/02/11/what-do-software-engineers-do.html)

- [Running Slack Bots on DigitalOcean with Dokku](https://code.dblock.org/2016/02/08/running-slack-bots-on-digital-ocean-with-dokku.html)

- [Why does Slack API rtm.start send you all this data?](https://code.dblock.org/2016/02/03/why-does-slack-api-rtm-start-send-you-all-this-data.html)

- [Downgrading a Yum Package with Chef](https://code.dblock.org/2016/01/15/downgrading-yum-package-with-chef.html)

- [When Robots Die - Slack account_inactive and Closed Connections](https://code.dblock.org/2016/01/12/when-robots-die-slack-account-inactive-and-closed-connections.html)

- [Slack API Explorer and ShellBot (aka Shlack)](https://code.dblock.org/2016/01/07/slack-metabot-and-shellbot.html)


## 2015

- [PlayPlay.io: Ping Pong, Chess, Pool and Tic-Tac-Toe Slack Bot](https://code.dblock.org/2015/12/24/playplayio-ping-pong-and-chess-slack-bot.html)

- [Writing a Slack Bot running on Rails (with React)](https://code.dblock.org/2015/11/28/writing-a-slack-bot-running-on-rails-with-react.html)

- [Zooming Out to Give Away Your Legos](https://code.dblock.org/2015/11/25/zooming-out-to-give-away-your-legos.html)

- [Writing a Slack Bot Service for Multiple Teams](https://code.dblock.org/2015/11/14/writing-a-slack-bot-service-for-multiple-teams.html)

- [How To Test Delayed Jobs](https://code.dblock.org/2015/11/02/how-to-test-delayed-jobs.html)

- [Passing Tests with Volkswagen](https://code.dblock.org/2015/10/09/passing-tests-with-volkswagen.html)

- [Docker-machine Hangs on Start: Testing TCP Connection](https://code.dblock.org/2015/10/07/docker-machine-start-hands-on-testing-tcp-connection.html)

- [MIT Hacking Arts 2015](https://code.dblock.org/2015/09/25/mit-hacking-arts-2015.html)

- [The Missing CTO and the IKEA Customer Service](https://code.dblock.org/2015/09/11/the-missing-cto-and-the-ikea-customer-service-207023713.html)

- [Turning Hindsight into Foresight](https://code.dblock.org/2015/09/01/turning-hindsight-into-foresight.html)

- [Lazy Each in Ruby MRI vs. Rubinius](https://code.dblock.org/2015/08/31/lazy-each-in-ruby-mri-vs-rubinius.html)

- [Getting Out of Your First Git Mess](https://code.dblock.org/2015/08/31/getting-out-of-your-first-git-mess.html)

- [Connecting People to Enable Magic](https://code.dblock.org/2015/08/17/what-does-a-cto-do-connecting-people-to-enable-magic.html)

- [The New Ruby Grape](https://code.dblock.org/2015/08/04/ruby-grape.html)

- [Creating Thinking Time while Walking to Work](https://code.dblock.org/2015/08/03/what-does-a-cto-do-creating-thinking-time-while-walking-to-work.html)

- [Getting Things Done with Mongoid 5](https://code.dblock.org/2015/07/24/getting-things-done-with-mongoid-5.html)

- [Offering Time to The Team](https://code.dblock.org/2015/07/18/what-does-a-cto-do-offering-time-to-the-team.html)

- [The Easiest Way to Write a Slack Bot in Ruby](https://code.dblock.org/2015/07/18/the-easiest-way-to-write-a-slack-bot-in-ruby.html)

- [What does a CTO do?](https://code.dblock.org/2015/05/23/what-does-a-cto-do.html)

- [A Roadmap for Hiring Engineering Teams](https://code.dblock.org/2015/05/20/a-roadmap-for-hiring-engineering-teams.html)

- [We don't poach each-other's engineers. It's a New York thing.](https://code.dblock.org/2015/05/13/we-dont-poach-each-others-engineers-its-a-new-york-thing.html)

- [What is the difference between a CTO and a VP or Head of Engineering?](https://code.dblock.org/2015/05/07/what-is-the-difference-between-cto-and-vp-or-head-of-engineering.html)

- [Join Us at NYC Tech Slack](https://code.dblock.org/2015/05/03/nyctechslack.html)

- [Slack Bot Real Time Messaging API Integration in Ruby Tutorial](https://code.dblock.org/2015/04/28/slack-bot-real-time-messaging-api-integration-tutorial.html)

- [Your First 60 Days at an Engineering Job](https://code.dblock.org/2015/04/23/your-first-60-days-at-an-engineering-job.html)

- [ActionMailer Integration Testing with Email-Example-Spec](https://code.dblock.org/2015/04/07/email-example-spec.html)

- [Open-Sourcing the Artsy Engineering Compensation Framework](https://code.dblock.org/2015/02/09/open-sourcing-the-artsy-engineering-compensation-framework.html)

- [Becoming Open Source by Default](https://code.dblock.org/2015/02/09/becoming-open-source-by-default.html)

- [CTO Cast Podcast: Open Source (Russian)](https://code.dblock.org/2015/01/24/ctocast6-podcast-on-open-source.html)

- [Remote Engineering, Cultural and Technical Diversity](https://code.dblock.org/2015/01/20/remote-engineering-cultural-and-technical-diversity.html)

- [How to Move Jekyll Posts Across Sites: Handling Redirects](https://code.dblock.org/2015/01/15/how-to-move-jekyll-posts-across-sites.html)

- [First Class Mongoid Queries with Collection Snapshots](https://code.dblock.org/2015/01/15/first-class-mongoid-queries-with-collection-snapshots.html)

- [Verifying a Jekyll Site With Keybase.io](https://code.dblock.org/2015/01/12/verifying-keybase-with-jekyll.html)

- [How to Make Recruiter Spam Useful: My Canned Response](https://code.dblock.org/2015/01/09/how-to-make-recruiter-spam-useful-my-canned-response.html)

- [The New code.dblock.org Powered by Jekyll](https://code.dblock.org/2015/01/07/the-new-code-dblock-dot-org.html)


## 2014

- [Designing a Hypermedia API with Grape & Roar](https://code.dblock.org/2014/11/05/designing-a-hypermedia-api-with-grape-roar.html)

- [Video: Mentoring Engineers and Humans](https://code.dblock.org/2014/10/07/video-mentoring-engineers-and-humans.html)

- [I Want to Contribute to Open-Source: Where do I Begin?](https://code.dblock.org/2014/09/29/i-want-to-contribute-to-open-source-where-do-i-begin.html)

- [Taking Over Someone Else's Open-Source Projects](https://code.dblock.org/2014/09/20/taking-over-someone-elses-open-source-projects.html)

- [Syntax Highlighting in Markdown Content with Recarpet, Coderay and Rails](https://code.dblock.org/2014/08/31/syntax-highlighting-in-markdown-content-with-recarpet-coderay-and-rails.html)

- [The Other Side of Your Interview](https://code.dblock.org/2014/08/19/the-other-side-of-your-interview.html)

- [Golden Gate Ruby Conference 2014](https://code.dblock.org/2014/07/18/golden-gate-ruby-conference-2014.html)

- [Serving Hypermedia with a Grape API and Roar](https://code.dblock.org/2014/07/18/serving-hypermedia-with-a-grape-api-and-roar.html)

- [Swissnex: Swiss Startup Lunch](https://code.dblock.org/2014/06/23/swissnex-swiss-startup-lunch.html)

- [Anatomy of a Ruby Gem: Grape](https://code.dblock.org/2014/06/23/anatomy-of-a-ruby-gem-grape.html)

- [Tiling and Zooming ASCII Art](https://code.dblock.org/2014/06/10/tiling-and-zooming-ascii-art.html)

- [When do you need to hire a designer?](https://code.dblock.org/2014/05/13/when-do-you-need-to-hire-a-designer.html)

- [Why One Giant Source Control Repository Is Bad for You (and Facebook)](https://code.dblock.org/2014/04/28/why-one-giant-source-control-repository-is-bad-for-you-and-facebook.html)

- [Hex, Crayola and iOS7 Colors with EDColor](https://code.dblock.org/2014/04/26/hex-crayola-and-ios7-colors-with-edcolor.html)

- [Pod5 Podcast](https://code.dblock.org/2014/04/15/pod5-podcast.html)

- [Reorganizing CocoaPod Folder Structure for Unit and Integration Testing](https://code.dblock.org/2014/03/26/reorganizing-cocoapod-folder-structure-for-unit-and-integration-testing.html)

- [Mapping and Tiling on iOS](https://code.dblock.org/2014/03/19/mapping-and-tiling-on-ios.html)

- [Your First CocoaPod](https://code.dblock.org/2014/03/02/your-first-cocoapod.html)

- [iOS UIView with an Image and Text with Dynamic Height](https://code.dblock.org/2014/02/03/ios-uiview-with-an-image-and-text-with-dynamic-height.html)

- [Mocking UIAlertView with OCMock](https://code.dblock.org/2014/01/16/mocking-uialertview-with-ocmock.html)

- [Debugging XCTool's NSInternalInconsistencyException: Failed while trying to gather build settings for your scheme](https://code.dblock.org/2014/01/15/debugging-xctools-nsinternalinconsistencyexception-failed-while-trying-to-gather-build-settings-for-your-scheme.html)

- [dotNetInstaller 2.3 Released](https://code.dblock.org/2014/01/06/dotnetinstaller-23-released.html)

- [American Horror Story and Entitlement in a Job Interview](https://code.dblock.org/2014/01/03/american-horror-story-and-entitlement-in-a-job-interview.html)


## 2013

- [Ruby Enumerable Detect with Value](https://code.dblock.org/2013/12/21/ruby-enumerable-detect-with-value.html)

- [Custom RSpec Meta Tag Validator](https://code.dblock.org/2013/12/13/custom-rspec-meta-tag-validator.html)

- [ld: library not found for–lXext installing RMagick on Mavericks](https://code.dblock.org/2013/11/24/ld-library-not-found-forlxext-installing-rmagick-on-mavericks.html)

- [Grape Mounted behind Goliath](https://code.dblock.org/2013/10/20/grape-mounted-behind-goliath.html)

- [Social Coding: Beyond Trolling Healthcare.gov](https://code.dblock.org/2013/10/07/social-coding-beyond-trolling-healthcaregov.html)

- [Error: No such module on process.binding](https://code.dblock.org/2013/10/03/error-no-such-module-on-processbinding.html)

- [EdgeConf 2013 NYC](https://code.dblock.org/2013/09/30/edgeconf-2013-nyc.html)

- [Recap of the StrangeLoop 2013 Conference in St. Louis](https://code.dblock.org/2013/09/30/recap-of-the-strangeloop-2013-conference-in-st-louis.html)

- [Making HTTPs Requests in Ruby & JavaScript w/ Node.js](https://code.dblock.org/2013/09/30/making-https-requests-in-ruby-javascript-w-nodejs.html)

- [10 Largest Collections in a MongoDB Database w/ Mongoid](https://code.dblock.org/2013/08/04/10-largest-collections-in-a-mongodb-database-w-mongoid.html)

- [Precompiling Rails Assets before RSpec/Capybara Integration Tests](https://code.dblock.org/2013/08/04/precompiling-rails-assets-before-rspeccapybara-integration-tests.html)

- [Evolving APIs using Grape API Versioning](https://code.dblock.org/2013/07/19/evolving-apis-using-grape-api-versioning.html)

- [My Pathological Fear of Deadlines](https://code.dblock.org/2013/06/29/my-pathological-fear-of-deadlines.html)

- [Mentoring 101](https://code.dblock.org/2013/06/12/mentoring-101.html)

- [How To Reject Engineering Candidates](https://code.dblock.org/2013/05/26/how-to-reject-engineering-candidates.html)

- [Building & Scaling a Test-Driven Culture @ AppNexus (Video)](https://code.dblock.org/2013/05/16/building-scaling-a-test-driven-culture-appnexus-video.html)

- [Being Helpful with Ruby Exceptions and Error Messages](https://code.dblock.org/2013/05/15/being-helpful-with-ruby-exceptions-and-error-messages.html)

- [Your First Ruby Gem](https://code.dblock.org/2013/05/15/your-first-ruby-gem.html)

- [Calculating the Gifted and Talented Percentile Rank](https://code.dblock.org/2013/04/13/calculating-the-gifted-and-talented-percentile-rank.html)

- [Grape vs. Poncho](https://code.dblock.org/2013/04/06/grape-vs-poncho.html)

- [Doctors, Surgery and Open-Source](https://code.dblock.org/2013/03/27/doctors-surgery-and-open-source.html)

- [5 Anti-patterns in a College Grad Engineer's Resume](https://code.dblock.org/2013/03/25/5-anti-patterns-in-a-college-or-junior-engineers-resume.html)

- [Grape 0.4.0 Released w/ Stricter JSON Format Support & More](https://code.dblock.org/2013/03/17/grape-040-released-w-stricter-json-format-support-more.html)

- [ResourceLib 1.4 Released](https://code.dblock.org/2013/03/03/resourcelib-14-released.html)

- [Graduating to Jenkins CI for Ruby-on-Rails Teams - Jenkins User Group in NYC (Video)](https://code.dblock.org/2013/03/02/graduating-to-jenkins-ci-for-ruby-on-rails-teams-jenkins-user-group-in-nyc-video.html)

- [In Defense of Heroku](https://code.dblock.org/2013/02/14/in-defense-of-heroku.html)

- [Data Corruption Is Most Likely Caused By Your Code And Not Your Database](https://code.dblock.org/2013/02/09/data-corruption-is-most-likely-caused-by-your-code-and-not-your-database.html)

- [Three DevOps Rake Tasks I Use Daily on Heroku with MongoDB](https://code.dblock.org/2013/02/02/three-devops-rake-tasks-i-use-daily-on-heroku-with-mongodb.html)

- [Should you use 'Should' in RSpec Examples?](https://code.dblock.org/2013/01/31/should-you-use-should-in-rspec-examples.html)

- [Hacker News Karma: 666](https://code.dblock.org/2013/01/23/hacker-news-karma-666.html)

- [Why I am Excited About the new Cornell Tech School](https://code.dblock.org/2013/01/21/why-i-am-excited-about-the-new-cornell-tech-school.html)

- [Open-Source Roundup for Early January 2013](https://code.dblock.org/2013/01/21/open-source-roundup-for-early-january-2013.html)

- [Help Me Fix Tech Recruiting: Become a Recruiter](https://code.dblock.org/2013/01/12/help-me-fix-tech-recruiting-become-a-recruiter.html)


## 2012

- [10 Things Engineers and Non-Engineers Can Do to Make a Website Faster](https://code.dblock.org/2012/12/23/10-things-engineers-and-non-engineers-can-do-to-make-a-website-faster.html)

- [Treat Every Line of Code as If It's Going to be Thrown Away One Day](https://code.dblock.org/2012/12/21/treat-every-line-of-code-as-if-its-going-to-be-thrown-away-one-day.html)

- [Losing Control to the Heroku PaaS](https://code.dblock.org/2012/12/14/losing-control-to-the-heroku-paas.html)

- [Migrating from a relational to a NoSQL cloud database?](https://code.dblock.org/2012/12/10/migrating-from-a-relational-to-a-nosql-cloud-database.html)

- [Five Ways to Torture Candidates in a Technical Interview](https://code.dblock.org/2012/12/08/five-ways-to-torture-candidates-in-a-technical-interview.html)

- [Measuring Performance in Grape APIs w/ NewRelic RPM](https://code.dblock.org/2012/12/03/measuring-performance-in-grape-apis-w-newrelic-rpm.html)

- [Debugging 'object has no properties' in a MongoDB map/reduce](https://code.dblock.org/2012/11/29/debugging-object-has-no-properties-in-a-mongodb-mapreduce.html)

- [TaxCloud: SOAP Service Integration in Ruby](https://code.dblock.org/2012/11/27/taxcloud-soap-service-integration-in-ruby.html)

- [Slow Migration to Mongoid::Slug 2.x](https://code.dblock.org/2012/11/22/slow-migration-to-mongoidslug-2x.html)

- [New York Times Open Source Science Fair](https://code.dblock.org/2012/11/22/new-york-times-open-source-science-fair.html)

- [Hack<Yale> 0-60 in Startup Tech](https://code.dblock.org/2012/11/03/hackyale-0-60-in-startup-tech.html)

- [The Safety Net: Removing Barriers to Test Automation](https://code.dblock.org/2012/10/23/the-safety-net-removing-barriers-to-test-automation.html)

- [AgileDC 2012: Taming the Testing Beast](https://code.dblock.org/2012/10/23/agiledc-2012-taming-the-testing-beast.html)

- [WAFFLE 1.5 Released](https://code.dblock.org/2012/10/22/waffle-15-released.html)

- [JNA 3.5.0 Released](https://code.dblock.org/2012/10/20/jna-350-released.html)

- [The tech? It just worked. Thanks AWS!](https://code.dblock.org/2012/10/13/the-tech-it-just-worked-thanks-aws.html)

- [How do I get the name of an object's type in JavaScript?](https://code.dblock.org/2012/10/13/how-do-i-get-the-name-of-an-objects-type-in-javascript.html)

- [Serkan Piantino on Scaling Facebook News Feed and Ken Little on Scaling Tumblr](https://code.dblock.org/2012/10/02/serkan-piantino-on-scaling-facebook-news-feed-and-ken-little-on-scaling-tumblr.html)

- [Single Sign-On: Servlet Negotiate Security Filter (Kerberos + NTLM) w/ Waffle and Jetty](https://code.dblock.org/2012/10/02/single-sign-on-servlet-negotiate-security-filter-kerberos-ntlm-w-waffle-and-jetty.html)

- [5 Ways to Avoid Feature Branches](https://code.dblock.org/2012/10/01/5-ways-to-avoid-feature-branches.html)

- [dotNetInstaller 2.2 Released](https://code.dblock.org/2012/08/24/dotnetinstaller-22-released.html)

- [VMWareTasks 1.7 Released](https://code.dblock.org/2012/08/24/vmwaretasks-17-released.html)

- [RSpec-Rerun Gem](https://code.dblock.org/2012/08/14/rspec-rerun-gem.html)

- [Returning a Sample Set from a Mongo Collection w/ Mongoid](https://code.dblock.org/2012/07/15/returning-a-sample-set-from-a-mongo-collection-w-mongoid.html)

- [Wrapping Responses with Grape and Rack](https://code.dblock.org/2012/07/05/wrapping-responses-with-grape-and-rack.html)

- [GoRuCo 2012: From Zero to API Cache w/ Grape & MongoDB in 10 Minutes (Video)](https://code.dblock.org/2012/07/01/goruco-2012-from-zero-to-api-cache-w-grape-mongodb-in-10-minutes-video.html)

- [5in5 NYC Episode 7](https://code.dblock.org/2012/06/28/5in5-nyc-episode-7.html)

- [Why I Love Code Reviews](https://code.dblock.org/2012/06/28/why-i-love-code-reviews.html)

- [Jenkins AnsiColor 0.3.0 Released](https://code.dblock.org/2012/06/05/jenkins-ansicolor-030-released.html)

- [MongoNYC 2012: Using MongoDB to Build Art.sy - Video](https://code.dblock.org/2012/06/03/mongonyc-2012-using-mongodb-to-build-artsy-video.html)

- [Community MSI Extensions 1.3 Released](https://code.dblock.org/2012/05/29/community-msi-extensions-13-released.html)

- [ResourceLib 1.3 Released](https://code.dblock.org/2012/05/28/resourcelib-13-released.html)

- [Pressing the Big Scary Red Reset Button](https://code.dblock.org/2012/05/15/pressing-the-big-scary-red-reset-button.html)

- [How Not to Rewrite Everything](https://code.dblock.org/2012/05/03/how-not-to-rewrite-everything.html)

- [How to Cross the Chasms of Your Technology Career](https://code.dblock.org/2012/04/22/how-to-cross-the-chasms-of-your-technology-career.html)

- [You Have to Stop Saying Your Experience is Under NDA in Interviews](https://code.dblock.org/2012/04/16/you-have-to-stop-saying-your-experience-is-under-nda-in-interviews.html)

- [Grape 0.2.0 Released](https://code.dblock.org/2012/03/29/grape-020-released.html)

- [Paging and Iterating Over Large Mongo Collections](https://code.dblock.org/2012/03/28/paging-and-iterating-over-large-mongo-collections.html)

- [How To Convert Numbers Into Words in Ruby (with numbers_and_words)](https://code.dblock.org/2012/03/23/how-to-convert-numbers-into-words-in-ruby-with-numbersandwords.html)

- [VMWareTasks Moved to Github](https://code.dblock.org/2012/03/20/vmwaretasks-moved-to-github.html)

- [Avoiding Production Disasters and The Value of Patience in Software Development](https://code.dblock.org/2012/03/19/avoiding-production-disasters-and-the-value-of-patience-in-software-development.html)

- [Full Client-Server Negotiate SSO in Java w/o a Web Server using WAFFLE](https://code.dblock.org/2012/03/15/full-client-server-negotiate-sso-in-java-wo-a-web-server-using-waffle.html)

- [How Long Does it Take to Create a 12 Lecture, 8 Week Course](https://code.dblock.org/2012/03/14/how-long-does-it-take-to-create-a-12-lecture-8-week-course.html)

- [Crafting a Ruby on Rails Course for Developers](https://code.dblock.org/2012/03/14/crafting-a-ruby-on-rails-course-for-developers.html)

- [How to Redirect Bang Hash Urls](https://code.dblock.org/2012/03/09/how-to-redirect-bang-hash-urls.html)

- [Why You Should Leave Microsoft, Too](https://code.dblock.org/2012/03/05/why-you-should-leave-microsoft-too.html)

- [Github Hacked: Things to Do on Monday](https://code.dblock.org/2012/03/05/github-hacked-things-to-do-on-monday.html)

- [Waffle @ NYJavaSIG](https://code.dblock.org/2012/02/24/waffle-nyjavasig.html)

- [Watching Rack Application Changes with Guard-Rack](https://code.dblock.org/2012/02/23/watching-rack-application-changes-with-guard-rack.html)

- [Grape API Mounted on RACK w/ Static Pages, Tests, JQuery UI, Backbone.js and Even Mongo](https://code.dblock.org/2012/02/22/grape-api-mounted-on-rack-w-static-pages-tests-jquery-ui-backbonejs-and-even-mongo.html)

- [Don't Hate UI Testing - Reliably Testing Asynchronous UI w/ RSpec & Capybara](https://code.dblock.org/2012/02/12/dont-hate-ui-testing-reliably-testing-asynchronous-ui-w-rspec-capybara.html)

- [Toyota Production System & Why Should Architects Write Code](https://code.dblock.org/2012/02/12/toyota-production-system-why-should-architects-write-code.html)

- [Updating Devise Trackable Last User Sign-In Time with Devise Rememberable](https://code.dblock.org/2012/02/08/updating-devise-trackable-last-user-sign-in-time-with-devise-rememberable.html)

- [Jenkins AnsiColor 0.2.1 w/ Support for Conceal Codes](https://code.dblock.org/2012/02/03/jenkins-ansicolor-021-w-support-for-conceal-codes.html)

- [CarrierWave: DelayJob-Processing of Selected Versions, Revisited](https://code.dblock.org/2012/01/31/carrierwave-delayjob-processing-of-selected-versions-revisited.html)

- [Testing w/ Analytical Gem and RSpec](https://code.dblock.org/2012/01/30/testing-w-analytical-gem-and-rspec.html)

- [Grape API Mounted on RACK w/ Static Pages](https://code.dblock.org/2012/01/30/grape-api-mounted-on-rack-w-static-pages.html)

- [How Art.sy uses Github to Build Art.sy](https://code.dblock.org/2012/01/29/how-artsy-uses-github-to-build-artsy.html)

- [Octopress: Setting up a Blog and Contributing to an Existing One](https://code.dblock.org/2012/01/17/octopress-setting-up-a-blog-and-contributing-to-an-existing-one.html)

- [Octopress: Blogging Evolution](https://code.dblock.org/2012/01/17/octopress-blogging-evolution.html)

- [Paginating w/ Mongoid 2.4.0, MongoMapper and Kaminari](https://code.dblock.org/2012/01/15/paginating-w-mongoid-240-mongomapper-and-kaminari.html)

- [Warning: Toplevel Constant XYZ Referenced Admin:XYZ](https://code.dblock.org/2012/01/08/warning-toplevel-constant-xyz-referenced-adminxyz.html)

- [Fabricating Spec Failures](https://code.dblock.org/2012/01/06/fabricating-spec-failures.html)


## 2011

- [Blame it all on MongoDB](https://code.dblock.org/2011/12/20/blame-it-all-on-mongodb.html)

- [Grape vs. Webmachine](https://code.dblock.org/2011/12/14/grape-vs-webmachine.html)

- [Measuring Activity in Open-Source Projects using Github Network Graph](https://code.dblock.org/2011/12/12/measuring-activity-in-open-source-projects-using-github-network-graph.html)

- [Grape: Describing and Documenting an API](https://code.dblock.org/2011/12/11/grape-describing-and-documenting-an-api.html)

- [Pushing Assets to S3 w/ Rake: Versioning and Cache Expiration](https://code.dblock.org/2011/12/10/pushing-assets-to-s3-w-rake-versioning-and-cache-expiration.html)

- [Serving Compressed Rails Assets from S3 via CloudFront](https://code.dblock.org/2011/12/09/serving-compressed-rails-assets-from-s3-via-cloudfront.html)

- [Sensations Fortes: Deploying Software from Airplanes](https://code.dblock.org/2011/11/30/sensations-fortes-deploying-software-from-airplanes.html)

- [dotNetInstaller 2.0 Released](https://code.dblock.org/2011/11/24/dotnetinstaller-20-released.html)

- [Me in Wired: Art.sy's ‘Genome' Predicts What Paintings You Will Like](https://code.dblock.org/2011/11/24/me-in-wired-artsys-genome-predicts-what-paintings-you-will-like.html)

- [Favorite Talks from QConfSF 2011](https://code.dblock.org/2011/11/23/favorite-talks-from-qconfsf-2011.html)

- [Oh BetaBeat: Me in New York's 20 Most Poachable Techies](https://code.dblock.org/2011/11/17/oh-betabeat-me-in-new-yorks-20-most-poachable-techies.html)

- [At QConSF 2011](https://code.dblock.org/2011/11/17/at-qconsf-2011.html)

- [Me @ Silicon Alley Talent Fair on NY1](https://code.dblock.org/2011/11/14/me-silicon-alley-talent-fair-on-ny1.html)

- [Alla Klein: A Fake Person In Charge of Customer Support](https://code.dblock.org/2011/11/09/alla-klein-a-fake-person-in-charge-of-customer-support.html)

- [NYC.rb: Building RESTful APIs w/ Grape](https://code.dblock.org/2011/11/08/nycrb-building-restful-apis-w-grape.html)

- [Rendering Markdown Documents in Rails](https://code.dblock.org/2011/11/07/rendering-markdown-documents-in-rails.html)

- [Don't Use MongoDB?](https://code.dblock.org/2011/11/06/dont-use-mongodb.html)

- [Corporate America: How to Let Great Engineers Go](https://code.dblock.org/2011/11/04/corporate-america-how-to-let-great-engineers-go.html)

- [Grape: Routing Multiple Methods](https://code.dblock.org/2011/11/03/grape-routing-multiple-methods.html)

- [Filtering by User-Agent in Rails](https://code.dblock.org/2011/11/03/filtering-by-user-agent-in-rails.html)

- [Using GCC to install Ruby w/ RVM on Mac OSX Lion](https://code.dblock.org/2011/11/03/using-gcc-to-install-ruby-w-rvm-on-mac-osx-lion.html)

- [Moving to New York? All You Need is the Tech Made in NYC List](https://code.dblock.org/2011/11/02/moving-to-new-york-all-you-need-is-the-tech-made-in-nyc-list.html)

- [Making Agile Technology Choices](https://code.dblock.org/2011/10/29/making-agile-technology-choices.html)

- [NoRails: Application Design in Times of APIs](https://code.dblock.org/2011/10/23/norails-application-design-in-times-of-apis.html)

- [Mongoid 2.0.2, Mongo + bson + bson_ext 1.4.0 and 1.4.1](https://code.dblock.org/2011/10/22/mongoid-202-mongo-bson-bsonext-140-and-141.html)

- [Ubuntu 11.10 and Back](https://code.dblock.org/2011/10/17/ubuntu-1110-and-back.html)

- [Sorting Tables in Rails w/ Mongoid](https://code.dblock.org/2011/10/13/sorting-tables-in-rails-w-mongoid.html)

- [Migrating from CodePlex SVN to Github](https://code.dblock.org/2011/10/12/migrating-from-codeplex-svn-to-github.html)

- [Eye&Mind Interview](https://code.dblock.org/2011/10/07/eyemind-interview.html)

- [Oracle Didn't Learn From the Redhat Experience, PRs a NoSQL Database](https://code.dblock.org/2011/10/04/oracle-didnt-learn-from-the-redhat-experience-prs-a-nosql-database.html)

- [Mongo Boston 2011](https://code.dblock.org/2011/10/02/mongo-boston-2011.html)

- [Capybara: Failed to Resynchronize, Ajax Request Timed Out (not caused by green elves)](https://code.dblock.org/2011/09/28/capybara-failed-to-resynchronize-ajax-request-timed-out.html)

- [Mongo Boston – October 3rd Cambridge, MA](https://code.dblock.org/2011/09/28/mongo-boston-october-3rd-cambridge-ma.html)

- [CarrierWave: DelayJob-Processing of Selected Versions](https://code.dblock.org/2011/09/22/carrierwave-delayjob-processing-of-selected-versions.html)

- [New Relic: Performance Instrumentation with Grape API](https://code.dblock.org/2011/09/21/new-relic-performance-instrumentation-with-grape-api.html)

- [Mongoid Collection Snapshot](https://code.dblock.org/2011/09/19/mongoid-collection-snapshot.html)

- [Just Say 'No' To Mailing List Spam by Recruiters (Continued)](https://code.dblock.org/2011/09/15/just-say-no-to-mailing-list-spam-by-recruiters-continued.html)

- [Rails Editable Mail Templates w/Preview from 37Signals](https://code.dblock.org/2011/09/15/rails-editable-mail-templates-wpreview-from-37signals.html)

- [IE9: Cache-Busting with Grape Middleware](https://code.dblock.org/2011/09/14/ie9-cache-busting-with-grape-middleware.html)

- [Being Lazy: Using the Ruby driver to connect to MongoDB](https://code.dblock.org/2011/09/12/being-lazy-using-the-ruby-driver-to-connect-to-mongodb.html)

- [Just Say 'No' To Mailing List Spam by Recruiters](https://code.dblock.org/2011/09/09/just-say-no-to-mailing-list-spam-by-recruiters.html)

- [Rails: Custom and Editable Mailer Templates in Markdown](https://code.dblock.org/2011/09/09/rails-custom-and-editable-mailer-templates-in-markdown.html)

- [Implementing My First Jenkins Plugin: AnsiColor](https://code.dblock.org/2011/09/07/implementing-my-first-jenkins-plugin-ansicolor.html)

- [Jenkins: Running RoR Builds w/ Bash & RVM](https://code.dblock.org/2011/09/06/jenkins-running-ror-builds-w-bash-rvm.html)

- [Autoconf: Maybe the First Example of Microsoft Pushing Features into the OS to Kill a Competitor](https://code.dblock.org/2011/09/06/autoconf-maybe-the-first-example-of-microsoft-pushing-features-into-the-os-to-kill-a-competitor.html)

- [Blast From The Past: Jade](https://code.dblock.org/2011/09/06/blast-from-the-past-jade.html)

- [JQuery Konami Komando](https://code.dblock.org/2011/09/05/jquery-konami-komando.html)

- [The Jenkins AnsiColor Plugin You've All Been Waiting For](https://code.dblock.org/2011/09/04/the-jenkins-ansicolor-plugin-youve-all-been-waiting-for.html)

- [Barista: Custom Preambles in CoffeeScript => JavaScript](https://code.dblock.org/2011/09/03/barista-custom-preambles-in-coffeescript-javascript.html)

- [Deploying Latest to Heroku with Jenkins CI](https://code.dblock.org/2011/09/02/deploying-latest-to-heroku-with-jenkins-ci.html)

- [Exporting Data to Excel in Ruby on Rails w/ Spreadsheet and to_xls](https://code.dblock.org/2011/09/01/exporting-data-to-excel-in-ruby-on-rails-w-spreadsheet-and-toxls.html)

- [CIJoe => Jenkins CI](https://code.dblock.org/2011/09/01/cijoe-jenkins-ci.html)

- [Permission denied - /var/tmp/ruby-uuid](https://code.dblock.org/2011/09/01/permission-denied-vartmpruby-uuid.html)

- [Committing CIJoe Runner Configuration into Git](https://code.dblock.org/2011/08/31/committing-cijoe-runner-configuration-into-git.html)

- [Installing a Specific Version of NodeJS, NPM and CoffeeScript](https://code.dblock.org/2011/08/31/installing-a-specific-version-of-nodejs-npm-and-coffeescript.html)

- [Embedding API Sandboxes in Documentation](https://code.dblock.org/2011/08/19/embedding-api-sandboxes-in-documentation.html)

- [Contribute to any of these open-source projects and I will help you in any way I can](https://code.dblock.org/2011/08/18/contribute-to-any-of-these-open-source-projects-and-i-will-help-you-in-any-way-i-can.html)

- [Unable to Obtain Stable Firefox Connection in 60 seconds: Downgrading Firefox on Ubuntu](https://code.dblock.org/2011/08/17/unable-to-obtain-stable-firefox-connection-in-60-seconds-downgrading-firefox-on-ubuntu.html)

- [Happiness is MongoDB: Slides from MongoNYC Meetup](https://code.dblock.org/2011/08/17/happiness-is-mongodb-slides-from-mongonyc-meetup.html)

- [RSpec: Fuubar + Breaking Tests into Suites](https://code.dblock.org/2011/08/16/rspec-fuubar-breaking-tests-into-suites.html)

- [Selecting items from a dropdown with Capybara, Selenium (Firefox) & JQuery](https://code.dblock.org/2011/08/12/selecting-items-from-a-dropdown-with-capybara-selenium-firefox-jquery.html)

- [No app specified: telling Heroku gem what its default --app should be](https://code.dblock.org/2011/08/08/no-app-specified-telling-heroku-gem-what-its-default-app-should-be.html)

- [Rubber Ducky Branch](https://code.dblock.org/2011/08/08/rubber-ducky-branch.html)

- [DBlog: Implementing Skeleton CSS Boilerplate](https://code.dblock.org/2011/08/02/dblog-implementing-skeleton-css-boilerplate.html)

- [Modularizing a RoR Grape API: Multiple Versions](https://code.dblock.org/2011/07/30/modularizing-a-ror-grape-api-multiple-versions.html)

- [Introducing Gem-Licenses: Collect 3rd Party Licenses in RoR Projects](https://code.dblock.org/2011/07/26/introducing-gem-licenses-collect-3rd-party-licenses-in-ror-projects.html)

- [Enginelopers and Devengeers: How do You Title Engineering Hires?](https://code.dblock.org/2011/07/25/enginelopers-and-devengeers-how-do-you-title-engineering-hires.html)

- [Modularizing a RoR Grape API](https://code.dblock.org/2011/07/23/modularizing-a-ror-grape-api.html)

- [DBlog: Implementing Blog Post Slugs in .NET](https://code.dblock.org/2011/07/22/dblog-implementing-blog-post-slugs-in-net.html)

- [Open-Source Is Simply Part of my Team's Job Description](https://code.dblock.org/2011/07/15/open-source-is-simply-part-of-my-teams-job-description.html)

- [Github is Your New Resume](https://code.dblock.org/2011/07/14/github-is-your-new-resume.html)

- [Storing Server-Side JavaScript Functions w/ Mongoid + Weekly Rollup](https://code.dblock.org/2011/07/14/storing-server-side-javascript-functions-w-mongoid-weekly-rollup.html)

- [Sitting is Killing You? Move to New York](https://code.dblock.org/2011/07/12/sitting-is-killing-you-move-to-new-york.html)

- [Pragmatic Replacement for the Vendor-Based, Bureaucratic and Soviet Style Technology Decision Makings](https://code.dblock.org/2011/07/09/pragmatic-replacement-for-the-vendor-based-bureaucratic-and-soviet-style-technology-decision-makings.html)

- [Mongoid 2.0.2 Dropped Pagination => Kaminari](https://code.dblock.org/2011/07/07/mongoid-202-dropped-pagination-kaminari.html)

- [Non-Traditional Methods of Choosing Technology for a Software Project](https://code.dblock.org/2011/07/06/non-traditional-methods-of-choosing-technology-for-a-software-project.html)

- [Slides from 'Choosing Technology'](https://code.dblock.org/2011/07/05/slides-from-choosing-technology.html)

- [Moving to New York: a Guide for Software Engineers](https://code.dblock.org/2011/06/29/moving-to-new-york-a-guide-for-software-engineers.html)

- [FoodCandy.com: Pulling the Plug](https://code.dblock.org/2011/06/28/foodcandycom-pulling-the-plug.html)

- [Waffle 1.4 Released](https://code.dblock.org/2011/06/26/waffle-14-released.html)

- [RSpec + Capybara Don't Return a Proper Exit Code](https://code.dblock.org/2011/06/23/rspec-capybara-dont-return-a-proper-exit-code.html)

- [How we Upgraded a Live Site in the Middle of Demo (and Didn't Die of a Heart Attack)](https://code.dblock.org/2011/06/21/how-we-upgraded-a-live-site-in-the-middle-of-demo-and-didnt-die-of-a-heart-attack.html)

- [JNA is now a Githubber](https://code.dblock.org/2011/06/20/jna-is-now-a-githubber.html)

- [Internet Explorer Refuses to read CSS from S3/CloudFront](https://code.dblock.org/2011/06/12/internet-explorer-refuses-to-read-css-from-s3cloudfront.html)

- [Git: Deleting Merged Branches](https://code.dblock.org/2011/06/09/git-deleting-merged-branches.html)

- [Compass: Invalid US-ASCII character 'xE2'](https://code.dblock.org/2011/06/09/compass-invalid-us-ascii-character-xe2.html)

- [Svn2Svn 1.2 Released](https://code.dblock.org/2011/06/09/svn2svn-12-released.html)

- [Delaying Image Processing on Heroku with delayed_job](https://code.dblock.org/2011/06/04/delaying-image-processing-on-heroku-with-delayedjob.html)

- [Why Microsoft Should Open-Source Skype](https://code.dblock.org/2011/05/31/why-microsoft-should-open-source-skype.html)

- [Dear California Engineer - Your Commute is Killing You? Move to New York!](https://code.dblock.org/2011/05/29/dear-california-engineer-your-commute-is-killing-you-move-to-new-york.html)

- [RoR Win: 'Getting Things Done' with MongoDB Mongoid](https://code.dblock.org/2011/05/27/ror-win-getting-things-done-with-mongodb-mongoid.html)

- [Your Startup's Technology: 0-60 @ Internet Week](https://code.dblock.org/2011/05/24/your-startups-technology-0-60-internet-week.html)

- [Capitalizing on the LinkedIn IPO: Avoiding Short Term Personal Stock Loss](https://code.dblock.org/2011/05/24/capitalizing-on-the-linkedin-ipo-avoiding-short-term-personal-stock-loss.html)

- [:Slow Rails server in development? => :rails_development_boost](https://code.dblock.org/2011/05/19/slow-rails-server-in-development-railsdevelopmentboost.html)

- [Improving tags map/reduce with MongoDB 1.8.x](https://code.dblock.org/2011/05/12/improving-tags-mapreduce-with-mongodb-18x.html)

- [Rails + S3 + CloudFront + Jammit + Heroku + 100 грам](https://code.dblock.org/2011/05/10/rails-s3-cloudfront-jammit-heroku-100.html)

- [Grape: API Authentication w/ Devise](https://code.dblock.org/2011/05/04/grape-api-authentication-w-devise.html)

- [Grape: trapping all exceptions within the API](https://code.dblock.org/2011/05/04/grape-trapping-all-exceptions-within-the-api.html)

- [Thinking open source: How startups destroy a culture of fear](https://code.dblock.org/2011/05/03/thinking-open-source-how-startups-destroy-a-culture-of-fear.html)

- [Blast from the past: working versions of XReplace-32 and Expression Calculator](https://code.dblock.org/2011/04/23/blast-from-the-past-working-versions-of-xreplace-32-and-expression-calculator.html)

- [0-60 In Startup Tech: Slides](https://code.dblock.org/2011/04/21/0-60-in-startup-tech-slides.html)

- [Summer Math and Engineering Internships @ Art.sy](https://code.dblock.org/2011/04/19/summer-math-and-engineering-internships-artsy.html)

- [Wrapping the Idee PixMatch RESTful API in a Ruby Gem](https://code.dblock.org/2011/04/14/wrapping-the-idee-pixmatch-restful-api-in-a-ruby-gem.html)

- [Your Startup's Technology: The First 60 Days in Examples / Class at General Assembly](https://code.dblock.org/2011/04/12/your-startups-technology-the-first-60-days-in-examples-class-at-general-assembly.html)

- [VirtualBox: Linux on Windows](https://code.dblock.org/2011/04/09/virtualbox-linux-on-windows.html)

- [Mongoid_fulltext: full-text n-gram search for your MongoDB models](https://code.dblock.org/2011/04/05/mongoidfulltext-full-text-n-gram-search-for-your-mongodb-models.html)

- [CarrierWave: Saving Best Image Geometry](https://code.dblock.org/2011/04/04/carrierwave-saving-best-image-geometry.html)

- [Setting up Cron to run Rake Tasks](https://code.dblock.org/2011/03/31/setting-up-cron-to-run-rake-tasks.html)

- [A Rake Task for Backing Up a MongoDB Database](https://code.dblock.org/2011/03/31/a-rake-task-for-backing-up-a-mongodb-database.html)

- [A Rake Task for Copying Data between Amazon S3 Buckets](https://code.dblock.org/2011/03/30/a-rake-task-for-copying-data-between-amazon-s3-buckets.html)

- [Rails: Passing Arrays in a Query String](https://code.dblock.org/2011/03/28/rails-passing-arrays-in-a-query-string.html)

- [A Rake Task for Copying MongoDB Databases](https://code.dblock.org/2011/03/27/a-rake-task-for-copying-mongodb-databases.html)

- [Beer Mug: Contribute Something Small to an Open-Source Project](https://code.dblock.org/2011/03/24/beer-mug-contribute-something-small-to-an-open-source-project.html)

- [CarrierWave: Full Control over Changing (S3) Upload Path Name](https://code.dblock.org/2011/03/22/carrierwave-full-control-over-changing-s3-upload-path-name.html)

- [Continuous Deployment with Heroku-Bartender](https://code.dblock.org/2011/03/20/continuous-deployment-with-heroku-bartender.html)

- [Agile Estimating: Don't Ask How Long it Takes, Sell It!](https://code.dblock.org/2011/03/17/agile-estimating-dont-ask-how-long-it-takes-sell-it.html)

- [How to define Enums in Ruby?](https://code.dblock.org/2011/03/16/how-to-define-enums-in-ruby.html)

- [Models look nice, but sometimes you just want to change they way they feel](https://code.dblock.org/2011/03/16/models-look-nice-but-sometimes-you-just-want-to-change-they-way-they-feel.html)

- [How to become an amazing contributor to an open-source project](https://code.dblock.org/2011/03/09/how-to-become-an-amazing-contributor-to-an-open-source-project.html)

- [Dan North doesn't believe in magic and makes babies cry](https://code.dblock.org/2011/03/07/dan-north-doesnt-believe-in-magic-and-makes-babies-cry.html)

- [Ruby: Unlearning OOP and Embracing Anarchy](https://code.dblock.org/2011/03/03/ruby-unlearning-oop-and-embracing-anarchy.html)

- [Art.sy: Change the World](https://code.dblock.org/2011/03/01/artsy-change-the-world.html)

- [Switching Comments of code.dblock.org to Disqus](https://code.dblock.org/2011/02/27/switching-comments-of-codedblockorg-to-disqus.html)

- [Folder-Driven Development: when to create a folder?](https://code.dblock.org/2011/02/26/folder-driven-development-when-to-create-a-folder.html)

- [JNA: Getting currently logged-in user's groups](https://code.dblock.org/2011/02/23/jna-getting-currently-logged-in-users-groups.html)

- [Adding (almost) static pages to your fancy Rails website](https://code.dblock.org/2011/02/21/adding-almost-static-pages-to-your-fancy-rails-website.html)

- [Technical Lead / Architect Job in NY](https://code.dblock.org/2011/02/18/technical-lead-architect-job-in-ny.html)

- [JNA: Coming back to Life on Kenai (and a word on Github)](https://code.dblock.org/2011/02/15/jna-coming-back-to-life-on-kenai-and-a-word-on-github.html)

- [Seeding, exporting and importing MongoDB data with Rake](https://code.dblock.org/2011/02/14/seeding-exporting-and-importing-mongodb-data-with-rake.html)

- [Rails: opinionated directory structure](https://code.dblock.org/2011/02/13/rails-opinionated-directory-structure.html)

- [DataMapper: promoting columns into classes](https://code.dblock.org/2011/02/11/datamapper-promoting-columns-into-classes.html)

- [Running ruby files on Heroku via rake](https://code.dblock.org/2011/02/11/running-ruby-files-on-heroku-via-rake.html)

- [BSON::InvalidKeyName: key must not contain '.' or ‘$'](https://code.dblock.org/2011/02/04/bsoninvalidkeyname-key-must-not-contain-or.html)

- [kernel.rb:27:in `should': uninitialized constant RSpec::Expectations::PositiveExpectationHandler (NameError)](https://code.dblock.org/2011/02/03/kernelrb27in-should-uninitialized-constant-rspecexpectationspositiveexpectationhandler-nameerror.html)

- [Waffle / Сейчас всё станет намного сложнее: troubleshooting Kerberos and NTLM](https://code.dblock.org/2011/02/03/waffle-troubleshooting-kerberos-and-ntlm.html)

- [Intersection of core values in open source and domain driven design](https://code.dblock.org/2011/01/31/intersection-of-core-values-in-open-source-and-domain-driven-design.html)

- [OCLF: One Click Lag Fix on Android 2.2 (Galaxy S)](https://code.dblock.org/2011/01/31/oclf-one-click-lag-fix-on-android-22-galaxy-s.html)

- [Open Source, ?, Profit](https://code.dblock.org/2011/01/27/open-source-profit.html)

- [2011 – The Year of NoSQL Data Breaches?](https://code.dblock.org/2011/01/27/2011-the-year-of-nosql-data-breaches.html)

- [ProcessDomain: remoting & out-of-process AppDomains](https://code.dblock.org/2011/01/25/processdomain-remoting-out-of-process-appdomains.html)

- [Win32: When things get seriously obscure in Windows XP/2003 UpdateResource](https://code.dblock.org/2011/01/25/win32-when-things-get-seriously-obscure-in-windows-xp2003-updateresource.html)

- [Almost Bricked Samsung Galaxy S Vibrant](https://code.dblock.org/2011/01/23/almost-bricked-samsung-galaxy-s-vibrant.html)

- [dotNetInstaller: UAC Elevation on Install](https://code.dblock.org/2011/01/20/dotnetinstaller-uac-elevation-on-install.html)

- [Waffle: Single Sign-On User Impersonation in Tomcat](https://code.dblock.org/2011/01/18/waffle-single-sign-on-user-impersonation-in-tomcat.html)

- [The program can't start because msvcrt-ruby18.dll is missing from your computer.](https://code.dblock.org/2011/01/14/the-program-cant-start-because-msvcrt-ruby18dll-is-missing-from-your-computer.html)

- [Breaking the Software Death Cycle with DDD](https://code.dblock.org/2011/01/06/breaking-the-software-death-cycle-with-ddd.html)


## 2010

- [Agile Hiring: get rid of the open headcount](https://code.dblock.org/2010/12/27/agile-hiring-get-rid-of-the-open-headcount.html)

- [Strictly Platonic: Engineering Jobs on Craigslist](https://code.dblock.org/2010/12/17/strictly-platonic-engineering-jobs-on-craigslist.html)

- [Help: what are the symptoms, events or actions of a software death cycle?](https://code.dblock.org/2010/12/10/help-what-are-the-symptoms-events-or-actions-of-a-software-death-cycle.html)

- [Corporate Change: Contributing to open source @ OpenSource.com](https://code.dblock.org/2010/12/09/corporate-change-contributing-to-open-source-opensourcecom.html)

- [MSI: This installation is forbidden by system policy.](https://code.dblock.org/2010/12/07/msi-this-installation-is-forbidden-by-system-policy.html)

- [JNA: Building JNA on Windows 64-bit](https://code.dblock.org/2010/12/07/jna-building-jna-on-windows-64-bit.html)

- [Can hiring women in software organizations save you money on plungers?](https://code.dblock.org/2010/12/06/can-hiring-women-in-software-organizations-save-you-money.html)

- [Waffle: configuring Tomcat's manager application](https://code.dblock.org/2010/11/30/waffle-configuring-tomcats-manager-application.html)

- [TeamSHATTER: Securing Java Applications with Smart Cards and Single-Sign-On](https://code.dblock.org/2010/11/22/teamshatter-securing-java-applications-with-smart-cards-and-single-sign-on.html)

- [JacobGen: PROCESSOR_ARCHITECTURE vs. PROCESSOR_ARCHITEW6432 in MSBuild](https://code.dblock.org/2010/11/21/jacobgen-processorarchitecture-vs-processorarchitew6432-in-msbuild.html)

- [MSBuild: Setting Up a Build Environment w/ NUnit](https://code.dblock.org/2010/11/18/msbuild-setting-up-a-build-environment-w-nunit.html)

- [IBM Cognos BI: generic XSLT normalization for table data](https://code.dblock.org/2010/11/10/ibm-cognos-bi-generic-xslt-normalization-for-table-data.html)

- [AppSecInc. Community MSI Extensions 1.2 Released](https://code.dblock.org/2010/11/09/appsecinc-community-msi-extensions-12-released.html)

- [3Licenses: Collect Your 3rd Party Licenses](https://code.dblock.org/2010/11/08/3licenses-collect-your-3rd-party-licenses.html)

- [Corporate Change: Contributing to Open Source](https://code.dblock.org/2010/11/04/corporate-change-contributing-to-open-source.html)

- [Waffle + JNA under Tomcat 5.5 Security Manager](https://code.dblock.org/2010/11/03/waffle-jna-under-tomcat-55-security-manager.html)

- [TeamSHATTER.com](https://code.dblock.org/2010/11/03/teamshattercom.html)

- [VMWareTasks 1.5 Released](https://code.dblock.org/2010/11/03/vmwaretasks-15-released.html)

- [Waffle w/ Tomcat 5.5, 6 and 7](https://code.dblock.org/2010/11/02/waffle-w-tomcat-55-6-and-7.html)

- [Svn2: deleting not-versioned files in SVN (at your own risk)](https://code.dblock.org/2010/11/02/svn2-deleting-not-versioned-files-in-svn-at-your-own-risk.html)

- [Fs2svn: synchronizing a non-SVN folder to an SVN working copy](https://code.dblock.org/2010/11/02/fs2svn-synchronizing-a-non-svn-folder-to-an-svn-working-copy.html)

- [@dblockdotorg](https://code.dblock.org/2010/11/01/dblockdotorg.html)

- [Personal Technical Blogging Policy](https://code.dblock.org/2010/10/25/personal-technical-blogging-policy.html)

- [log4jna: The description for Event ID 4096 from source log4jna cannot be found.](https://code.dblock.org/2010/10/14/log4jna-the-description-for-event-id-4096-from-source-log4jna-cannot-be-found.html)

- [log4jna: log4j:ERROR Could not register event source (Access is denied.)](https://code.dblock.org/2010/10/14/log4jna-log4jerror-could-not-register-event-source-access-is-denied.html)

- [Does your company have a policy on personal tech blogging and contributing to open-source?](https://code.dblock.org/2010/10/12/does-your-company-have-a-policy-on-personal-tech-blogging-and-contributing-to-open-source.html)

- [Guava: replacing a ConcurrentHashMap](https://code.dblock.org/2010/10/04/guava-replacing-a-concurrenthashmap.html)

- [Stuxnet](https://code.dblock.org/2010/10/03/stuxnet.html)

- [JNA: Reading Windows Event Log entries in Java](https://code.dblock.org/2010/09/30/jna-reading-windows-event-log-entries-in-java.html)

- [Log4jna: getting rid of the pesky NTEventLogAppender.dll](https://code.dblock.org/2010/09/28/log4jna-getting-rid-of-the-pesky-nteventlogappenderdll.html)

- [VMWare ESXi 4.1.0 Automation: Insufficient permissions in host operating system](https://code.dblock.org/2010/09/24/vmware-esxi-410-automation-insufficient-permissions-in-host-operating-system.html)

- [Samsung Galaxy Lag Fix: EXT2 FS](https://code.dblock.org/2010/09/11/samsung-galaxy-lag-fix-ext2-fs.html)

- [RemoteInstall in ThisWeekInTest.tv](https://code.dblock.org/2010/08/21/remoteinstall-in-thisweekintesttv.html)

- [Basic Workflow with htmlInstaller: HTML-based bootstrapper for DNI](https://code.dblock.org/2010/08/06/basic-workflow-with-htmlinstaller-html-based-bootstrapper-for-dni.html)

- [Supporting MSI Uninstall in dotNetInstaller](https://code.dblock.org/2010/08/02/supporting-msi-uninstall-in-dotnetinstaller.html)

- [dotNetInstaller 1.10 Released](https://code.dblock.org/2010/07/26/dotnetinstaller-110-released.html)

- [Waffle 1.3 Released](https://code.dblock.org/2010/07/25/waffle-13-released.html)

- [RemoteInstall Test Framework 1.2 Released](https://code.dblock.org/2010/07/17/remoteinstall-test-framework-12-released.html)

- [Single Sign-On: Spring-Security Negotiate Filter (Kerberos + NTLM) w/Waffle](https://code.dblock.org/2010/07/09/single-sign-on-spring-security-negotiate-filter-kerberos-ntlm-wwaffle.html)

- [Iterating over lists in MSBuild](https://code.dblock.org/2010/07/07/iterating-over-lists-in-msbuild.html)

- [Introducing Oshi: Operating System and Hardware Information (Java)](https://code.dblock.org/2010/06/23/introducing-oshi-operating-system-and-hardware-information-java.html)

- [Code Coverage with EMMA](https://code.dblock.org/2010/06/18/code-coverage-with-emma.html)

- [WAFFLE: A PowerPoint Presentation](https://code.dblock.org/2010/06/08/waffle-a-powerpoint-presentation.html)

- [Visual Studio 2008 Crashes: doesn't always mean Microsoft sucks](https://code.dblock.org/2010/06/08/visual-studio-2008-crashes-doesnt-always-mean-microsoft-sucks.html)

- [Учись Работать / Вся правда о том, что нас мотивирует](https://code.dblock.org/2010/05/29/the-truth-about-what-motivates-us.html)

- [Tomcat Single Sign-On mixed with Form Authentication w/ Waffle](https://code.dblock.org/2010/05/27/tomcat-single-sign-on-mixed-with-form-authentication-w-waffle.html)

- [Single Sign-On: Servlet Negotiate Security Filter (Kerberos + NTLM) w/ Waffle](https://code.dblock.org/2010/05/25/single-sign-on-servlet-negotiate-security-filter-kerberos-ntlm-w-waffle.html)

- [Windows/Active Directory Authentication: Tomcat + JAAS w/ Waffle](https://code.dblock.org/2010/05/24/windowsactive-directory-authentication-tomcat-jaas-w-waffle.html)

- [NTLM: Please show ID with every POST](https://code.dblock.org/2010/05/20/ntlm-please-show-id-with-every-post.html)

- [Single Sign-On: Tomcat Negotiate Authenticator (Kerberos + NTLM) w/ Waffle](https://code.dblock.org/2010/05/20/single-sign-on-tomcat-negotiate-authenticator-kerberos-ntlm-w-waffle.html)

- [Spring-LDAP: Naming and Directory Services with OpenDS](https://code.dblock.org/2010/05/13/spring-ldap-naming-and-directory-services-with-opends.html)

- [MSI Property Patterns: Upgrading, FirstInstall and Maintenance](https://code.dblock.org/2010/05/11/msi-property-patterns-upgrading-firstinstall-and-maintenance.html)

- [MSI Community Extensions: deploying databases](https://code.dblock.org/2010/05/11/msi-community-extensions-deploying-databases.html)

- [FoodCandy.com: Implementing Facebook Connect and Signup w/ Graph API](https://code.dblock.org/2010/05/07/foodcandycom-implementing-facebook-connect-and-signup-w-graph-api.html)

- [Java Native Access (JNA) 3.2.5 Shipped](https://code.dblock.org/2010/04/28/java-native-access-jna-325-shipped.html)

- [Harvesting wix files](https://code.dblock.org/2010/04/14/harvesting-wix-files.html)

- [JNDI: Naming and Directory Services with OpenDS](https://code.dblock.org/2010/04/13/jndi-naming-and-directory-services-with-opends.html)

- [Pure Java Waffle](https://code.dblock.org/2010/04/08/pure-java-waffle.html)

- [JNA: Working with Unions](https://code.dblock.org/2010/04/02/jna-working-with-unions.html)

- [JNA: pointers to arrays of pointers](https://code.dblock.org/2010/03/29/jna-pointers-to-arrays-of-pointers.html)

- [JNA: AcquireCredentialsHandle, InitializeSecurityContext and AcceptSecurityContext - Establishing an Authenticated Connection](https://code.dblock.org/2010/03/26/jna-acquirecredentialshandle-initializesecuritycontext-and-acceptsecuritycontext-establishing-an-authenticated-connection.html)

- [JNA: accessing Windows registry from Java](https://code.dblock.org/2010/03/23/jna-accessing-windows-registry-from-java.html)

- [JNA: Win32 platform API implementation](https://code.dblock.org/2010/03/18/jna-win32-platform-api-implementation.html)

- [WAFFLE: Windows Authentication Functional Framework (LE)](https://code.dblock.org/2010/03/01/waffle-windows-authentication-functional-framework-le.html)

- [JNA: Advapi32, Netapi32 and Secur32](https://code.dblock.org/2010/02/22/jna-advapi32-netapi32-and-secur32.html)

- [Win32 PInvoke with JNA](https://code.dblock.org/2010/02/19/win32-pinvoke-with-jna.html)

- [Cabinet.dll: what's a proper way to handle fdintCABINET_INFO in a split cab](https://code.dblock.org/2010/02/11/cabinetdll-whats-a-proper-way-to-handle-fdintcabinetinfo-in-a-split-cab.html)

- [MSIOpenPackage on Windows 7: behavior changed](https://code.dblock.org/2010/02/10/msiopenpackage-on-windows-7-behavior-changed.html)

- [Oracle 0-day: how complex systems allow simple attacks](https://code.dblock.org/2010/02/10/oracle-0-day-how-complex-systems-allow-simple-attacks.html)

- [VMWareTasks: collecting Guest OS environment variables](https://code.dblock.org/2010/01/30/vmwaretasks-collecting-guest-os-environment-variables.html)

- [VMWareTasks: reading RunProgramInGuest command output](https://code.dblock.org/2010/01/30/vmwaretasks-reading-runprograminguest-command-output.html)

- [dotNetInstaller 1.8 Released](https://code.dblock.org/2010/01/24/dotnetinstaller-18-released.html)

- [Living in Adelaide, GMT+9:30](https://code.dblock.org/2010/01/09/living-in-adelaide-gmt930.html)


## 2009

- [Locating UI controls and clicking through menus with System.Windows.Automation and White](https://code.dblock.org/2009/12/16/locating-ui-controls-and-clicking-through-menus-with-systemwindowsautomation-and-white.html)

- [The tyranny of the plan](https://code.dblock.org/2009/12/12/the-tyranny-of-the-plan.html)

- [Automating Win32 UI Testing: System.Windows.Automation and Project White](https://code.dblock.org/2009/12/12/automating-win32-ui-testing-systemwindowsautomation-and-project-white.html)

- [Kevlin Henney on hideously dangerous complexity](https://code.dblock.org/2009/12/10/kevlin-henney-on-hideously-dangerous-complexity.html)

- [RemoteInstall: supporting reboots between installers](https://code.dblock.org/2009/12/08/remoteinstall-supporting-reboots-between-installers.html)

- [Implementing AtomPUB in .NET](https://code.dblock.org/2009/12/07/implementing-atompub-in-net.html)

- [Bug Driven Design](https://code.dblock.org/2009/12/06/bug-driven-design.html)

- [Designing a System with Reporting in Mind](https://code.dblock.org/2009/11/29/designing-a-system-with-reporting-in-mind.html)

- [MSI Extensions Logo](https://code.dblock.org/2009/11/23/msi-extensions-logo.html)

- [AppSecInc. MSI Extensions Open Sourced](https://code.dblock.org/2009/11/20/appsecinc-msi-extensions-open-sourced.html)

- [AppSecInc. MSI Experience](https://code.dblock.org/2009/11/20/appsecinc-msi-experience.html)

- [CryptProtectData and FIPS 140](https://code.dblock.org/2009/11/18/cryptprotectdata-and-fips-140.html)

- [RemoteInstall Test Framework Open-Sourced](https://code.dblock.org/2009/11/18/remoteinstall-test-framework-open-sourced.html)

- [Vestris Inc. source code published](https://code.dblock.org/2009/10/29/vestris-inc-source-code-published.html)

- [Mocking UI](https://code.dblock.org/2009/10/15/mocking-ui.html)

- [Deleting Empty Folders in Outlook](https://code.dblock.org/2009/10/09/deleting-empty-folders-in-outlook.html)

- [dotNetInstaller Setup Bootstrapper 1.7 Ships](https://code.dblock.org/2009/10/02/dotnetinstaller-setup-bootstrapper-17-ships.html)

- [The Duct Tape Programmer by Joel Spolsky](https://code.dblock.org/2009/09/24/the-duct-tape-programmer-by-joel-spolsky.html)

- [SLMRA: silly little mail reader](https://code.dblock.org/2009/09/22/slmra-silly-little-mail-reader.html)

- [Autoconf: world's best multiple configurations software](https://code.dblock.org/2009/09/22/autoconf-worlds-best-multiple-configurations-software.html)

- [Vestris Inc. software for free](https://code.dblock.org/2009/09/22/vestris-inc-software-for-free.html)

- [The Towers of Hanoi: recursive and iterative implementation in Scheme](https://code.dblock.org/2009/09/22/the-towers-of-hanoi-recursive-and-iterative-implementation-in-scheme.html)

- [N queens puzzle: a scheme and x86 assembly solution](https://code.dblock.org/2009/09/22/n-queens-puzzle-a-scheme-and-x86-assembly-solution.html)

- [Can you believe it? I wrote this code over 10 years ago...](https://code.dblock.org/2009/09/19/can-you-believe-it-i-wrote-this-code-over-10-years-ago.html)

- [ResourceLib 1.2 with added support for RT_JUSTABOUTEVERYTHING](https://code.dblock.org/2009/09/19/resourcelib-12-with-added-support-for-rtjustabouteverything.html)

- [VMWareTasks 1.3 for VixCOM 1.7.0 (let's reinvent less wheels)](https://code.dblock.org/2009/09/10/vmwaretasks-13-for-vixcom-170-lets-reinvent-less-wheels.html)

- [IFYYFME, or how to Maintain a Healthy Level of Communication Across Organizational Boundaries](https://code.dblock.org/2009/09/03/i-f-you-you-f-me-or-how-to-maintain-a-healthy-level-of-communication-across-organizational-boundaries.html)

- [Why is my Microsoft not working? A tribute to Raymond Chen](https://code.dblock.org/2009/08/18/why-is-my-microsoft-not-working-a-tribute-to-raymond-chen.html)

- [MSLU is well alive or how to run on Windows 95/98 without carrying unicows.dll](https://code.dblock.org/2009/07/21/mslu-is-well-alive-or-how-to-run-on-windows-9598-without-carrying-unicowsdll.html)

- [Upgrading, FreshInstall, Maintenance and other MSI convenience properties](https://code.dblock.org/2009/06/05/upgrading-freshinstall-maintenance-and-other-msi-convenience-properties.html)

- [Vulnerability Assessment: User Rights Review](https://code.dblock.org/2009/04/26/vulnerability-assessment-user-rights-review.html)

- [VMWareTasks 1.2: RC1](https://code.dblock.org/2009/04/13/vmwaretasks-12-rc1.html)

- [ACL-based authorization model with NHibernate](https://code.dblock.org/2009/02/26/acl-based-authorization-model-with-nhibernate.html)

- [dotNetInstaller moving to CodePlex](https://code.dblock.org/2009/02/24/dotnetinstaller-moving-to-codeplex.html)

- [Svn2svn: migrating from SourceForge to CodePlex](https://code.dblock.org/2009/02/22/svn2svn-migrating-from-sourceforge-to-codeplex.html)

- [Nesting multiple ConfigurationElement types in a ConfigurationElementCollection](https://code.dblock.org/2009/02/18/nesting-multiple-configurationelement-types-in-a-configurationelementcollection.html)

- [How to do a Debug, Release or both builds with MSBuild](https://code.dblock.org/2009/02/13/how-to-do-a-debug-release-or-both-builds-with-msbuild.html)

- [How the .NET Queue<T> will bite your memory usage](https://code.dblock.org/2009/02/10/how-the-net-queuet-will-bite-your-memory-usage.html)

- [Rotating Passwords in Active Directory](https://code.dblock.org/2009/01/09/rotating-passwords-in-active-directory.html)

- [File Resource Management .NET Library](https://code.dblock.org/2009/01/06/file-resource-management-net-library.html)

- [VMWare Tasks .NET Library for VixCOM](https://code.dblock.org/2009/01/03/vmware-tasks-net-library-for-vixcom.html)


## 2008

- [Abstracting a cumbersome construct in VIX API: GetNumProperties + GetNthProperty](https://code.dblock.org/2008/12/27/abstracting-a-cumbersome-construct-in-vix-api-getnumproperties-getnthproperty.html)

- [Getting the display name of a VMWare snapshot](https://code.dblock.org/2008/12/26/getting-the-display-name-of-a-vmware-snapshot.html)

- [Copying files to/from VMWare guest OS is slow: an alternate approach](https://code.dblock.org/2008/12/24/copying-files-tofrom-vmware-guest-os-is-slow-an-alternate-approach.html)

- [Announcing the VMWare Tasks Library](https://code.dblock.org/2008/12/20/announcing-the-vmware-tasks-library.html)

- [Remote Control, Copy and Run programs on a VMware Workstation or VI server using VIX APIs](https://code.dblock.org/2008/12/10/howto-remote-control-copy-and-run-programs-on-a-vmware-workstation-or-vi-server-using-vix-apis.html)

- [WMI: Executing a remote process and waiting for its completion](https://code.dblock.org/2008/12/03/wmi-executing-a-remote-process-and-waiting-for-its-completion.html)

- [Count projections in NHibernate 1.2](https://code.dblock.org/2008/12/03/count-projections-in-nhibernate-12.html)

- [Resetting a Canon MP460](https://code.dblock.org/2008/12/03/resetting-a-canon-mp460.html)

- [Product/Build Versioning with MSBuild, ANT and CruiseControl](https://code.dblock.org/2008/10/26/productbuild-versioning-with-msbuild-ant-and-cruisecontrol.html)

- [Icon support in ResourceLib.NET](https://code.dblock.org/2008/09/28/icon-support-in-resourcelibnet.html)

- [Log4Cxx for Win32 VS 2005, 2008, etc.](https://code.dblock.org/2008/09/19/log4cxx-for-win32-vs-2005-2008-etc.html)

- [Tales from the interview: the drool and the handshake test](https://code.dblock.org/2008/09/07/tales-from-the-interview-the-drool-and-the-handshake-test.html)

- [Agile in Practice: What Is Actually Going On Out There?](https://code.dblock.org/2008/09/07/agile-in-practice-what-is-actually-going-on-out-there.html)

- [Documenting WIX Code](https://code.dblock.org/2008/09/06/documenting-wix-code.html)

- [Google Chrome](https://code.dblock.org/2008/09/03/google-chrome.html)

- [Why doesn't logging from an immediate custom action work?](https://code.dblock.org/2008/08/31/why-doesnt-logging-from-an-immediate-custom-action-work.html)

- [DNI: setup (msi) bootstrapper](https://code.dblock.org/2008/08/31/dni-setup-msi-bootstrapper.html)

- [Finding MSI UpgradeCode programmatically](https://code.dblock.org/2008/08/18/howto-finding-msi-upgradecode-programmatically.html)

- [Unit Testing MSI Custom Actions](https://code.dblock.org/2008/08/18/unit-testing-msi-custom-actions.html)

- [Building a dynamic SiteMap in ASP.NET 2.0 for a large website](https://code.dblock.org/2008/08/10/building-a-dynamic-sitemap-in-aspnet-20-for-a-large-website.html)

- [Dirty Panel Extender (ASP.NET AJAX)](https://code.dblock.org/2008/08/10/dirty-panel-extender-aspnet-ajax.html)

- [Who am I?](https://code.dblock.org/2008/08/10/who-am-i.html)

- [File Resource Management Library (.NET)](https://code.dblock.org/2008/08/10/file-resource-management-library-net.html)

- [Code Blog: Hello World](https://code.dblock.org/2008/08/10/code-blog-hello-world.html)

