The Curious Engineer

All blogs / Go

clipperhouse.com

clipperhouse.com

Recent content on clipperhouse.com

GoC# / .NETPerformance / optimizationSoftware / engineering practice

’05’10’15’20’25
Posts
316 from 1 Jan 2001 to 12 Oct 2025
Posting
now and then
Kind
personal blog
Feed
https://clipperhouse.com/index.xml

2025 5

  1. Making Unicode things fast
  2. Allocations are a dependency
  3. YAGNI for distributed rate limiters
  4. So, you’re inspecting strings on the hot path
  5. Designing a composable rate limiter

2024 7

  1. The surprises of CDC on production workloads
  2. So, you’re splitting strings on the hot path
  3. 90% of physics in 900 words
  4. C# (almost) has implicit interfaces
  5. Tips for moving between Go and C#
  6. Go-style “alongside” testing in C# and .Net Core
  7. Apple as MVNO for LLMs

2018 13

  1. Generics as builtin typeclasses
  2. Saying true things is hard
  3. Query expansions in Stack Overflow Talent
  4. Does TypeScript make for more performant JavaScript?
  5. Having the courtesy to be wrong
  6. Championship in practice (at Stack Overflow)
  7. Championship
  8. A career decision influenced by Nassim Taleb
  9. Static file hosting with active content
  10. Stack Overflow tag correlations
  11. How to move from Medium to static hosting with Jekyll or Hugo
  12. Jargon demo
  13. The makings of a strategy

2017 2

  1. Toward less injection
  2. Alikewise (dating by the book)

2016 5

  1. KPIs are software
  2. Time well spent
  3. Decker, for a prettier Twitter
  4. Lore
  5. Principles of null-free programming

2015 11

  1. Imagining version control for APIs
  2. Three ways the new iOS ad blocking hurts Google
  3. Three outcomes of the adpocalypse
  4. Improve the median, not the mean
  5. Liquidity, open source and security
  6. Statements are statements, and expressions are expressions (in Go)
  7. Theory of the firm: opt-in initiatives
  8. Bugs are a failure of prediction
  9. The legacy ad industry is wrong about ad blockers
  10. Embedding a struct declaration in a text template in Go
  11. Uncanny valley tech recruiting

2014 21

  1. Yes, net neutrality is conservative. That’s the problem.
  2. My security and privacy tools
  3. A type system in runtime’s clothing
  4. Hierarchy and orthogonality in C# and Go
  5. Know your guarantees, Go edition
  6. The two edges of “culture fit”
  7. How a savvy landlord would handle Airbnb
  8. De facto immutability
  9. What Netflix bought from Comcast is a CDN
  10. Middle class in NYC
  11. NYC doesn’t need to be Silicon Valley
  12. An idea for bookifying the web
  13. Web Components: have we not been here before?
  14. Nesting is state
  15. Ben Horowitz on wage-fixing
  16. What Stack Overflow and Go have in common
  17. How I optimize conversations
  18. Threshold thinking
  19. The trouble with interfaces in Go
  20. New release of gen
  21. Another reason publishers should adopt SSL: referrers

2013 17

  1. Publishers and SSL
  2. Multi-credentialing
  3. Progress bars cannot be accurate
  4. Your site doesn’t need a novel progress indicator
  5. Language and social signaling
  6. 1.6% of what?
  7. Incidence of compulsion
  8. Epistemology and human factors: deal with ‘em
  9. OCD is id, high standards are ego
  10. A few thoughts on flat
  11. For want of parens in Ruby
  12. Fasctimidating
  13. Alerts as spam
  14. What if ‘source code’ were a serialized syntax tree?
  15. Debugging is debugging
  16. Your phone is faster than Amtrak’s wifi
  17. Ad blocking, like piracy, is a market phenomenon

2012 22

  1. Labor costs make way for Maslow
  2. A political approach to hiring creatives
  3. Microsoft’s political privacy game
  4. The good might be the enemy of the perfect with software patents
  5. The quaintness of “content” vs “infrastructure”
  6. Two, billion-dollar UI mistakes in Windows 8
  7. Resolution vs “real estate”
  8. Fluency
  9. This way madness lies (thankfully)
  10. Conservative and liberal
  11. What’s next for Better Bird?
  12. The inorganic app
  13. A failure of empathy
  14. C# should be truthy-y
  15. Nobody cares about “channels”
  16. Suspension of disbelief
  17. Try “Better Bird”
  18. Craigslist can help fix the NYC apartment market
  19. Owning a data type, or, be the switchboard
  20. Disrupting the NYC rental information market
  21. The friction constituency
  22. What legacy politicians actually fear

2011 17

  1. Quality of life in NYC
  2. Please don’t lobby
  3. Me doing techno
  4. Why can’t mobile apps have URLs?
  5. The binary web
  6. The law is not Turing complete
  7. Going about your business, or pleasure
  8. Inversion of scarcity
  9. The NYT paywall is about segmenting, not security
  10. Implicit vs. explicit social graphs
  11. Design is information
  12. Every programming problem…
  13. Fixing the jQuery “jump” on slide
  14. Chrome breaks 10% market share; modern browsers at 80%
  15. How Microsoft can make Visual Studio cool among the cool kids
  16. This is what a non-neutral net looks like
  17. A call for industry-wide pixel-doubling

2010 43

  1. The Internet is not a public commons, and it is not Beetlejuice
  2. The scourge of paid prioritization
  3. What Ricky Gervais doesn’t understand about God
  4. Ben Bernanke’s list of economic participants
  5. A couple of easy wins with SQL indexes
  6. Is Fred Wilson arguing for “Content Neutrality”?
  7. Market share for the taking, or, outrunning the bear
  8. Avoiding “magic strings” in jQuery, C# and ASP.net MVC
  9. Alikewise learnings #1: DIY PR
  10. Sherman’s law of prior knowledge, or, predicting the past
  11. The busiest people at Apple right now…
  12. When “infographics” jump the shark
  13. HTTPS is the least of your problems
  14. Stacking up
  15. Beware the truth-tellers
  16. Please don’t write “efficient” CSS
  17. 0.facebook.com is not neutral
  18. Adobe: call it Flash 11 already
  19. Standards: why?
  20. Tip: random sort order in C#
  21. Epistemology in everyday life
  22. Dear tech journalists: please announce a one-year, self-imposed Apple embargo
  23. Dear Facebook: let us define the relationships
  24. “No carry-on fees” simply means everyone pays carry-on fees
  25. Entrepreneurship and health care
  26. The point at which your project becomes bigger than your head
  27. The artificial distinction between “content” and “delivery”
  28. jQuery appears to be incompatible with IE9 preview
  29. Don’t confuse syntax with reasoning
  30. A few more reasons to use Progressive Enhancement
  31. How about jQuery-style “property methods” for C#?
  32. Net neutrality and preserving the dinosaurs
  33. IE8 becomes #1 browser, Chrome up, Firefox plateaus
  34. Google throws down the gauntlet on IE6; you and I get a free ride
  35. Preserving the back button on Ajax pages
  36. Will Apple emulate the “Kindle everywhere” strategy?
  37. Modal performance in browsers, or, exploiting z-index
  38. Breach by design
  39. Google’s China move: don’t be played
  40. Netbooks and computer theft
  41. Everyone wants to “own the relationship”, until they actually do
  42. What follows the “no-fly” list?
  43. “Modern browsers” nearly doubled share in 2009; IE6 lost a third of its user base

2009 136

  1. How about implied interfaces in C#?
  2. Questions about the Apple tablet that no one is answering yet
  3. Is this a good “non-profit” idea?
  4. Programmers and “productivity”
  5. AT&T etc etc
  6. Preventing mission creep in your Views, or, ignorance is bliss
  7. John Resig jQuery talk
  8. The Man sticks it to The Man; or, the Country-club Revolt; or, Whitey’s Revenge
  9. Amazon’s core competency? Pricing.
  10. Speeding up localhost in Visual Studio
  11. Tegra notebooks wanted
  12. Wi-fi cafes in NYC
  13. 100% data loss at Coding Horror??
  14. Schneier and Schmidt
  15. Shorting Firefox
  16. Browser-specific CSS without Javascript or horrible syntax
  17. Logic as data, and a case where strong typing impeded learning
  18. {less} CSS for .Net
  19. A gold mine for StackOverflow
  20. Betting on a future without IE6
  21. Why is Intel having so much trouble shipping its solid-state drives?
  22. Wizards in ASP.Net MVC: being selective with ModelState
  23. Using the Microsoft Ajax Minifier, some gotcha’s
  24. Unsolicited iPhone suggestions #2: internet radio
  25. WTF Intel?
  26. IE9 preview coming?
  27. keyCode vs charCode vs Firefox
  28. The iPhone calendar has a separate time zone from the phone
  29. Unsolicited iPhone suggestions #1: email
  30. The emergence of Big Data (2.0)
  31. Teevee on the peecee
  32. Google Closure based on naive server-side notions?
  33. Google music previews songs based on lyrics
  34. Windows virtual machines get competitive
  35. A new language from Google
  36. The Paris Hilton problem
  37. The flagship strategy of mobile phones — Microsoft needs one
  38. Why is Apple treading water with the Apple TV? Because the real product is in the works.
  39. Does this metric pass the smell test?
  40. IE6 users and status-conscious creative directors
  41. California says the iPhone costs $599
  42. Will Apple fix Boot Camp for Windows?
  43. Is Verizon’s network better, or is it simply untested?
  44. Mozilla VP: “mistakes were made”
  45. Word nerdism #1: Make mine a medium
  46. Think of SSDs as multi-core storage
  47. StackOverflow == Facebook * .0001
  48. Solving the n+1 problem in Linq to SQL, using projection
  49. A simple way that Apple can improve iPhone battery life and user experience
  50. When Apple aligns with a carrier, act II
  51. A thought experiment: serial vs parallel
  52. Compile-time checking of views in ASP.Net MVC
  53. Is Google building an anti-spam empire?, or, size matters
  54. The dullest blog
  55. Your bottleneck is you, or, why I’ve stopped worrying about performance
  56. What the heck is going on with Intel’s next-generation SSDs?
  57. Quickie geek quiz #4
  58. Deploying an ASP.net MVC project
  59. Scale means reversing your thinking on the database
  60. The “var” thing
  61. What’s the word…?
  62. Why I heart jQuery
  63. Quickie geek quiz #3
  64. It’s the data, not the algorithm
  65. Barber shop recommendation
  66. Quickie geek quiz #2
  67. Chair in the sky
  68. Will Microsoft “subsidize” Zune HD pricing?
  69. Tell me your favorite expression for “dead”
  70. Killer app for the Zune HD: Tivo for radio
  71. Quickie geek quiz #1
  72. Random numbers web service
  73. What is Google going to do with On2?
  74. The most viable reason for Apple’s rejection of Google Voice (so far)
  75. Do you have “grit”?
  76. 403 Forbidden (and 400 Bad Request) errors with Amazon Product Advertising API
  77. A market opportunity for Verizon and Sprint
  78. Is proprietary Mac hardware killing Windows battery life?
  79. Someone please sell me a solid-state drive with Windows 7 on it
  80. The Googlebot runs Javascript
  81. Meetings are error states
  82. Making good programmers feel like bad programmers
  83. How to tell the new Intel SSDs from the old ones
  84. Known and unknown unknowns
  85. Is the VP of Monetizing Synergy off today?
  86. Google Maps goes physical, Gavin Newsom doing product endorsements
  87. Holy licensing costs, MasterCard
  88. Javascript is now strategic for Microsoft
  89. Subscription media consolidation gets started
  90. Pandora’s trying to change my tastes
  91. Is Wolfram Alpha too clever by half?
  92. The iPhone needs multi-tasking, stat
  93. A prediction of EU hypocrisy
  94. Can Google Chrome OS get traction?
  95. The new wave of self-shorteners
  96. Why is a Social Security Number considered a secret?
  97. Use case: the metric system, or, all that useless beauty
  98. More about {less}
  99. Domain names are too cheap
  100. Birthday suggestion
  101. Network, network, network, network or network?
  102. Google as censor? Of course.
  103. iPhone activation servers overwhelmed?
  104. Use case: SSL and email
  105. Imagine CSS evolved as a programming language
  106. “Built-in” jQuery (and how IE can get some dev cred)
  107. What is a “programmer”?
  108. 64-bitness: what it is and what it ain’t
  109. The cloud! The cloud!
  110. More jQuery performance tips: 11 keystrokes buy you 10x
  111. Leopard : Snow Leopard :: Vista : Windows 7
  112. URL shortener for ASP.net
  113. Windows Live Writer works great with BlogEngine.Net
  114. Mayor at the movies
  115. Highslide as ASP.net control
  116. The OS still matters, or, platform abstraction is hard
  117. The DOM is a data source, query it wisely
  118. GM + Men’s Wearhouse = Tootsie Roll
  119. Displaying the Subversion revision number in your web application
  120. New build of jQuery Controls [1.0.3433]
  121. Can haz Mifi?
  122. New build of jQuery Controls [1.0.3429]
  123. Javastrict
  124. Go craigslist
  125. Subscription music consolidation
  126. Educator extension for BlogEngine.net released
  127. Philip Greenspun…
  128. Hidden features of C#
  129. Does null ever equal anything?
  130. Nulls and knowledge
  131. Firefox has a user base; does it have a future?
  132. jQuery controls alpha available for download
  133. WebClient, Fiddler and SSL
  134. Hammering the DOM
  135. Just getting started
  136. Free shipping: getting closer

2008 11

  1. The long game on metered pricing: free shipping
  2. The biggest threat to your rights? Scarcity.
  3. Somewhere in Brussels, some buggy whips need gilding
  4. Demand first, then supply
  5. Entrepeneurs vs bureacrats
  6. Regulation, incumbency, haves and have-nots
  7. What advertising means
  8. Podcast on broadband with your humble host
  9. Internet diversity & cut cables
  10. What we have are multiple broadband strategies; this is a good thing
  11. The long game on metered pricing and Net Neutrality

2001 6

  1. gen: force flag
  2. gen: optional typewriters
  3. gen: slice typewriter
  4. gen: stringer
  5. gen: type writers
  6. gen: Type-driven code generation for Go