Blog Archive 2021 2021 → 2022 Dec 19 2021 Open-source: If You Build it Right, They’ll Come Nov 07 2021 UI SDK Design Principles Oct 12 2021 Onboarding as a New Engineering Manager Aug 09 2021 Software Architecture - Topic 6 - Slack and Microsoft Teams Jun 18 2021 Software Architecture - Topic 5 - MongoDB Apr 23 2021 Software Architecture - Topic 4 - Redis Mar 04 2021 Can I Have a Career as a Frontend Engineer? Feb 19 2021 Software Architecture - Topic 3: Writing Jan 17 2021 What Drives Me? Jan 16 2021 2020 Software Architecture - Topic 2: People Dec 30 2020 Software Architecture - Topic 1: Delightfulness Dec 26 2020 “you’re unfrogettable” Dec 24 2020 A Tribute to Time Travel APIs in Ruby on Rails Dec 07 2020 Tips for Great Developer Demos Nov 28 2020 Where to Learn: 10 Ways I Do Nov 18 2020 Learn to Get and Give Feedback Nov 12 2020 My YouTube Playlist for Leadership Nov 04 2020 Difference Between Managing One Team Vs. Many Oct 12 2020 Communication Hacks I Learned From Job Interview Feedback Oct 11 2020 Context Sep 15 2020 Change Aug 31 2020 When I Applied KonMari to My Calendar Jul 17 2020 People Management and Diagnosing Low Performance May 18 2020 I Just Love to Read Code Feb 28 2020 Working With Me Feb 08 2020 2019 How About Full-Stack Micro-Services? Nov 17 2019 Notes from The VoxxedDays Banff, 2019 Sep 23 2019 What We Learned About Feature Flags in Five Years Aug 13 2019 Software Architecture is all about Ugly Boxes and Lines - My Wishlist Aug 10 2019 All Talk No Show: Software Architecture Aug 02 2019 Play at Work Jul 04 2019 Internal Trainings Jun 27 2019 Polyglot YYC 2019: My First Unconference Jun 05 2019 Micro Design Critic: Microsoft Word vs. Apple Pages May 29 2019 Exception Handling Anti-patterns May 23 2019 “Ah, how good it is to be among people who are reading.” Apr 11 2019 How am I Developing the People I Support as a People Leader? Mar 26 2019 Ruby on Rails: Database Migration and Downtime Mar 18 2019 What I Learned from Grad School about Innovation? Jan 01 2019 2018 Headless CI Oct 10 2018 2017 The PhD Project Oct 31 2017 On Reference Checks: Don’ts Sep 07 2017 So you want to be a software developer. Where to start? Feb 28 2017 Why do you want this new job? Feb 27 2017 2017 and beyond Jan 02 2017 2016 Annual letter Dec 18 2016 2015 RailsConf 2015 May 08 2015 Rails: Please include a JS test runner Mar 23 2015 You Can Haz Automated REST API Documentation Jan 13 2015 2015 Jan 02 2015 2014 Lessons Learned: Entrepreneurship and Innovation Course Dec 09 2014 What’s wrong with the default alert rendered by the browser? Nov 20 2014 100 Miles, a 100 Miles… Oct 31 2014 50 Miles! Oct 01 2014 On Keeping Things Simple Sep 25 2014 Monolith vs Microservices Sep 18 2014 100 Miles in 50 Days Challenge Sep 12 2014 Hosting a Hands-on Session: Lessons Learned Jun 02 2014 AngularJS: Refresh or Die Apr 03 2014 The Year 2014 Jan 30 2014 2013 Configure Me Not Nov 03 2013 Introducing Asset Pipeline to Older Apps? Oct 08 2013 Career choices: Should I take this job? Sep 19 2013 Will You Put That Cell Phone Away? Aug 27 2013 Algorithms Need Better UI Aug 12 2013 AngularJS is Very Productive, and Cool too! Jun 14 2013 Released streamy_csv gem May 10 2013 Generating and Streaming Potentially Large CSV files using Ruby on Rails May 09 2013 Simplicity and Client-Side MVC May 07 2013 MicroOptimization Trap Apr 30 2013 Unconventional Conventions Apr 19 2013 Call me Sohan and Ask-Me-Not about S M Apr 05 2013 Implementation Challenges with a Multi-Tenant/SaaS Database Apr 04 2013 Interesting User Interaction Data on Dashboard Widgets Apr 02 2013 MvcMailer and Open Source Happiness Mar 18 2013 Solution Architecting Using Queues? Mar 07 2013 Random Data in Tests Feb 27 2013 Practical API Design Challenges for Client Side MVC Feb 25 2013 Are ActiveRecord Callbacks Any Good? Feb 07 2013 Rejecting Because It Didn’t Work Last Time Jan 24 2013 On ActiveRecord Query Enhancers Jan 21 2013 MongoDB is Abusing JSON! Jan 17 2013 Hybrid Persistence Jan 08 2013 2012 How much to validate? Dec 14 2012 What Programming Language Should I Learn in 2013? Dec 12 2012 The Myth of One Assert Per Test Dec 06 2012 Readable Unit Tests Nov 28 2012 Unit Testing and Sleep Nov 27 2012 Seed Data in a Rails Project Nov 23 2012 ORM or Not? Nov 06 2012 Development Environments and Dependency Hell Oct 25 2012 Pair Programming vs. Code Reviews Oct 22 2012 Joined Sourcefire Oct 22 2012 Database Design: Sorting by Concepts on Nullable Fields Oct 11 2012 MvcMailer new API Oct 02 2012 LoveJS Presentation at CAMUG Sep 13 2012 Deploying a Java Application Using Capistrano Aug 07 2012 Design of a MongoDB Analytics Database Aug 05 2012 Deploying to TV Screens Jul 28 2012 My Take on Client-Side MVC Mar 30 2012 Are You Still Parsing HTML Element Ids? Jan 22 2012 Object Versioning is an Open Design Problem Jan 17 2012 2011 Care Driven Development: Javascript Nov 20 2011 Enterprise Software Projects: oh, yeah! Nov 18 2011 Aligning an HTML DIV Inside Another One Nov 13 2011 Using instanceof is mostly a Code Smell Nov 01 2011 Nightly Build is a Warning (or Horror) Oct 04 2011 The Perils of Soft Delete Sep 28 2011 Hardcoded URLs in Javascript are too Slippery Sep 23 2011 Excess of Private Methods is a Code Smell Sep 20 2011 Quiz: C# Async and Await. What is the Output of this Code? Sep 16 2011 How to Extend a Ruby Module? Sep 16 2011 Should You Unit Test Interaction with Static Methods? Aug 15 2011 How to list all classes that include a module? Aug 12 2011 Should you unit test methods with a lot of mocking? Aug 09 2011 Ruby present? Method Aug 05 2011 Constructors Are Methods, too! Jul 26 2011 How to Annoy Your Customers? Learn from GoDaddy Account Status Email Jul 22 2011 Avoid Duplication in Config Files Jul 11 2011 How Not To Provide Feedback When Doing Code Review Jun 25 2011 Service API and Exceptions Jun 22 2011 NuGet - Why Should You Care? Mar 17 2011 My 2011 Q1 developer roadmap Mar 14 2011 MvcMailer 1.0 Released Mar 07 2011 Whats Coming in MvcMailer NuGet 1.0? Mar 04 2011 ActionMailer 3 - why do you call instance methods as class/self methods? Jan 28 2011 Social Helpers in ASP.Net MVC3 (Facebook, Twitter, Gravatar etc.) Jan 14 2011 My Article at CodeProject: MvcMailer Jan 13 2011 C# Named Parameters Can be Very Useful Jan 07 2011 2011: Yet Another New Year Jan 02 2011 2010 DRY - Total 161 Duplicate ArgumentNullException calls in ASP.Net MVC Source Code Dec 13 2010 Book Review: Jose Valim’s Crafting Rails Applications Dec 10 2010 Ruby - some mysterious language features Nov 11 2010 Upgrading to Ruby on Rails 3 - beware! Nov 10 2010 Using nil.to_a or whatever.to_a in ruby Sep 29 2010 4 design principles Sep 18 2010 OO Design Dilemma: Auditing Changes Across Hierarchical Objects Sep 15 2010 Know Your Enemies Before They Kill You! Jul 19 2010 The Greatest Show on Earth and What Else? Jul 07 2010 Summer of 2010! Europe, here we come! May 03 2010 Using Authlogic and single access token for API access Apr 26 2010 flash.now - did you know? Mar 31 2010 What’s up next? Mar 23 2010 Ruby on Rails Security Review: An Experience Report Mar 11 2010 Ruby on Rails or Rails on Ruby? Mar 09 2010 Rails Source Code Walkthrough #1: the ActiveModel Module Feb 26 2010 Why would you spend $10 to learn to use Basecamp? Feb 25 2010 Ruby on Rails Interview Questions: Advanced Feb 23 2010 Ruby on Rails Interview Questions Feb 22 2010 Uploading files with blog post Jan 21 2010 Experience notes from a RoR code review job Jan 20 2010 Home/End key in Mac ( MacBook Pro ) Windows on Bootcamp Jan 01 2010 2009 Added Crummy to generate breadcrumbs for CampZero.com Dec 27 2009 acts_as_permalinkable: SEO friendly rails URLs using my first RoR plugin Dec 27 2009 Sitemap-generator for your Rails App and deployment solution Dec 24 2009 How to strip html tags, truncate and highlight texts in ruby on rails Dec 22 2009 How is Rails plugins helping me in developing CampZero.com? Dec 18 2009 What I learned from my first semester at University of Calgary as a Grad Student? Dec 15 2009 Lean Thinking: You will probably like to learn the essence of agile Nov 06 2009 Now reading: Lean Software Development: An Agile Toolkit Oct 27 2009 Communicating tools for working on remote projects Oct 17 2009 Web application user interface without any Menu Oct 06 2009 Showing unread posts/comments: An example of rails ActiveRecord ‘touch’ Sep 21 2009 Some useful plugins for RoR projects Sep 17 2009 The CGI story on agile scaling success on a large project Sep 09 2009 A new home at Calgary and starting days Sep 06 2009 Rambling stories from my days @ Code71 : My Takehome Aug 19 2009 Rambling story from my days @ Code71: My reading list Aug 11 2009 Rambling stories from my days @ Code71 : Startup days Aug 08 2009 Rails modeling guide#2: naming convention for ruby on rails model methods Jul 16 2009 Rails modeling guide#1: right structure of a ruby on rails model Jul 16 2009 Implementing breadcrumb in rails projects – a clean approach Jul 07 2009 Lesson#2: Pace Your Sprint Rightly Jun 15 2009 Lesson#1: Going Incremental is Natural! Jun 03 2009 Its easier to get lost! Would you? Jun 03 2009 Unit/Functional Test Rails ActionController filters following DRY May 13 2009 Forget Me Not! Object Oriented Design in Custom Exception Apr 26 2009 Unit Test eager loading in Rails ActiveRecord association Apr 21 2009 Implementing Template Method in Rails Controllers Using Module and Mixin Apr 15 2009 Testing the SyntaxHighlighter Scripts Apr 11 2009 Pair Programming: How am I feeling? Apr 09 2009 assert_equal_float : assert_equal between two float objects with precision Apr 07 2009 Looking at ASP.NET MVC Apr 05 2009 named_scope : Real life examples from ScrumPad Mar 30 2009 Design/Code Review: Now, It’s time to realize! Mar 23 2009 Juggernaut on Linux Mar 22 2009 Comet and Server Push (Reverse Ajax) technology Mar 22 2009 The RANK() Function for Numbering on Groups/Partitions in SQL Server Mar 06 2009 Working on a Data Warehouse project Feb 22 2009 A good example of C# Regular Expression: Implementing InitCap or Titleize/TitleCase using C# and Regular Expression Jan 21 2009 2008 Solution to JavaScript File Include Problem From ASP.Net MasterPage Dec 23 2008 Asp.Net Membership: How to change a user’s password from an admin account without knowing the current password? Dec 23 2008 Part 1: How am I IMPACTing following Scrum? Nov 26 2008 IMPACTing for agile software development Nov 18 2008 Delving into client side capabilities of ASP.Net Ajax Nov 18 2008 RowTest Extension for NUnit Nov 10 2008 Iterative and Incremental implementation of Code Reviews Nov 03 2008 CruiseControl.Net (CCNet) configuration example for NCover Sep 06 2008 Set and Compile using C# Language Version 2.0 in Visual Studio 2008 Sep 01 2008 BDD - My First BDD Code using RSpec in Ruby Sep 01 2008 My Target items still in the 2008 learning Queue Aug 20 2008 Unit Testing using Mocks - FillWithMocks, Fill all or only selected properties with Mocks using only a single method call Aug 13 2008 XDocument.ToStringWithXmlDeclaration() - Get the string representation of XDcoument with its Xml Declaration Aug 12 2008 Simple Wildcard replacement on the Rendered Html of Asp.Net Page Aug 11 2008 Log4Net SmtpAppender and sending emails with log messages Aug 07 2008 Comparing with NULL in where clause using Linq to SQL Aug 05 2008 JQuery - I will consider using it in my future web project Aug 04 2008 Ninject - Dependency Injection Framework for .Net Objects Aug 03 2008 [ThreadStatic] - A cool Attribute to Thread Safe static members Jun 10 2008 Simple Article on REST using WCF Jun 08 2008 INVEST - Characteristics of Effective User Stories May 28 2008 Enable IntelliSense support for Spring.Net objects xml definition May 28 2008 My Article at CodeProject on LINQ to SQL DataContext CommandTimeout May 23 2008 Try the CopySourceAsHTML VS Addin to blog .Net Codes May 14 2008 Read My Article at CodeProject on LINQ to Log4Net Logging May 14 2008 Page_ClientValidate - Use this Method from Javascript for ASP.Net Client Side Validation May 11 2008 An Article on Unit Testing Events in C# 3.0 May 04 2008 How To Set Default Application Wide CommandTimeout in LINQ to SQL DataContext Subclasses Apr 29 2008 string.GetValueOrDefault() - A Simple Extension Method Apr 16 2008 Best of Today’s RSS from My Daily Feeds Apr 14 2008 My Today’s best RSS feeds Apr 12 2008 IsNullOrEmpty() - A Handy Extension Method for IEnumerable Apr 12 2008 Best RSS Feed I have read today Apr 09 2008 Posts of the day that I liked most Apr 08 2008 Logging the LINQ to SQL Generated SQL Queries/Commands Apr 07 2008 Creating Instances of internal classes using Spring.Net Apr 07 2008 My First Post Using Windows Live Writer Apr 06 2008 My MCTS Certification Mar 25 2008 A solution to the problem with creating mocks for interfaces with Generic Methods with NMock Mar 20 2008 Verify Correct DateTime data in method call using NMock Mar 18 2008 Mock Internal Interface with NMock2 - Use InternalsVisibleToAttribute Mar 16 2008 Unity - A Dependency Injection framework from Microsoft Patterns and Practices Mar 15 2008 Testing Internal Class in .Net C# Mar 11 2008 What does a Scrum Master really do? Mar 08 2008 Preserve Ownership, mode and other attributes while copying in Linux Feb 13 2008 C# keyword ‘yield return’ - I find it interesting Feb 05 2008 C# 3.0 Anonymous types - actual type depends on the order of the property assignnments Feb 04 2008 2007 Unit Testing void Methods - Part 2 Dec 02 2007 Unit Testing void Methods - Part 1 Dec 02 2007 The Easiest and the Hardest Methods to write unit test for Dec 02 2007 Object Graphs and Dependency Injection Dec 01 2007 Two Aspects of Agile Software Development Process Nov 28 2007 Prerequisites for IID Nov 28 2007
A good example of C# Regular Expression: Implementing InitCap or Titleize/TitleCase using C# and Regular Expression Jan 21 2009
Asp.Net Membership: How to change a user’s password from an admin account without knowing the current password? Dec 23 2008
Unit Testing using Mocks - FillWithMocks, Fill all or only selected properties with Mocks using only a single method call Aug 13 2008
XDocument.ToStringWithXmlDeclaration() - Get the string representation of XDcoument with its Xml Declaration Aug 12 2008
A solution to the problem with creating mocks for interfaces with Generic Methods with NMock Mar 20 2008