Exploring Cursor Composer as a pair programmer
I’ve recently started using Cursor, an AI-powered fork of VS Code, along with Claude 3.5 (Sonnet) as my coding sidekick. It’s a pretty sweet upgrade from GitHub Copilot. The AI really gets code, and I think it’s going to change how we write software. Since it’s still improving, I figured I’d share my experience and some best practices in real time.
Cursor has this cool feature called Composer (⌘-i). It's an AI chat in a palette that can access your entire project. It can write changes across multiple files, suggest code, and even present you with diffs to accept or reject. When it’s working well, it feels like pair programming with a really fast (but not always perfect) dev buddy.
To put Cursor to the test, I decided to rebuild this very blog. It was a Django-based site I originally created back in 2011. It worked, but needed a glow-up. So, over one long weekend, I rebuilt it using Typescript, Next.js, and Composer. And let me tell you, Composer made things fly. I was honestly shocked at how quickly everything came together.
I started...
AI-assisted programming is changing the way we build apps and write code.
It’s happened again! A brand new website! For those of you who have been following along since the early days, you might remember that the previous version of my site was crafted back in 2011. Ah, the good old days of Django and SCSS libraries like Bourbon and Jeet. These tools were the best of the best, way back then! At the time, one of the cool features of the site was that it was responsive—yes, it looked great on a telephone! How far we've come since then! What we considered modern back then is now just table-stakes in today’s web development.
Fast forward to today, and I’ve decided to give the site a complete overhaul. This time around, I’ve used TypeScript, Next.js, and Prisma ORM—some of the best frameworks available right now. These tools are the best of the best TODAY, and have made building the site both a breeze and a joy. Honestly, the difference is night and day. Not only does the site load faster and perform better, but the developer experience is so much smoother.
Here's...
Again I'm returning to my blog after several years of ignoring it.
I've become convinced that we need to decentralize our social media and stop giving our data and privacy to "big tech" interests who package and sell it as they wish.
I also want to start contributing to the development of a real-world, decentralized, encrypted protocol to allow us a path forward.
I plan to write about that process here, and possibly use this blog or website to "dogfood" the concept. There are other people working on similar ideas, and I intend to start researching the best way to proceed. Let me know in the comments if you have any recommended reading or Twitter follows to pursue on this topic!
In the process of dusting off, I looked back at this website. I designed and built this site in 2011, and haven't touched it much since. Websites and web development have changed a lot since then, but the site still holds up pretty well.
I removed some items from my social sidebar, due to evolution:
The hardest part about adding comments to this blog was fighting the NIH syndrome.
I have been working on the software that powers this blog as an open-source Django app for the last few months. It's coming along nicely and already powers my wife's site Ultra-Luxurious.
The last version of this site had a gorgeous custom threaded comments section. I had not included that with the package yet because I really wanted to overhaul it. As nice as it was, it was very prone to comment spam (nasty!). I had ended up turning off comments on nearly every post in my blog as a result.
I upgraded the blogs to Django 1.7 recently and noticed that Django's comments had been deprecated, so I was going to need to dive in even deeper to rebuild the comments. At that point I thought "why would I be doing this?" and went to check out Disqus. They have a very nice commenting plugin that works great, is free, and solves the spam problem. Boom!
I had to choke down a bit of NIH, but really - why work to maintain the software and keep spammers out when it's already available for free?
So in version 2.0.2 of the cp-blog software,...
Today I’m excited to announce my new job as EVP Technology and Development at Giantsource, Inc. Giantsource is a design, development and consulting firm based here in Los Angeles, mostly working with the entertainment industry. It was founded about three years ago by one of my great friends from the Myspace days, who I have done many projects with. In fact I have worked with almost everyone in the company before (some of them a LOT), and it feels like I’m rejoining a "dream team" that I’ve definitely missed for the last couple years. It’s an amazing group of talent and I am thrilled to be a part of it.
I’m also very happy to be working with a company owned and run by developers. It’s a breath of fresh air to be sure. Working with a group that understands digital products and modern workflows, as well as trends in technology and consumer behavior, will be a lot of fun and I see a very prolific time ahead for me.
2014 has been an action-packed year already. Now that I’m joining such a capable group who really “gets it” and is constantly pushing the envelope of entertainment experiences,...