Jim Wallace
Jim Wallace
@jim@extroverteddeveloper.com
224 posts
2 followers
  • Taskleef Update: January – February 2025

    Tags System Overhaul

    • Create tags directly from the Tags management page – no need to create them inline anymore
    • Colored tags – add colors to your tags for visual organization on boards
    • Usage counts – see how many tasks use each tag to identify what’s important

    Task Management

    • Mark Complete button added to the task detail modal for quicker completion
    • Confirmation dialogs now appear before deleting tasks, columns, and other items – no more accidental deletions
    • Tooltips on truncated text – hover to see full content when titles are cut off
    • Inbox screen – new dedicated view for todos not yet assigned to any board

    File Attachments

    • Card attachments – you can now attach files to your cards

    Real-Time Notifications

    • Browser push notifications via SignalR – get notified instantly when changes happen on cards you’re subscribed to
    • Click to navigate – clicking a notification takes you directly to the relevant board and card
    • Richer notification context – notifications now show more helpful information

    Authentication & Security

    • Password change – change your password from account settings
    • Email verification – new signups now require email verification
    • Password reset flow – forgot your password? Reset it via email

    User Experience Improvements

    • Onboarding tour – new users get a guided walkthrough of the app
    • Emoji picker – type : to trigger an emoji picker in text fields
    • Email invitations – invite non-registered users to your boards via email
    • Board search – filter boards by keyword on the boards screen
    • Move to Column – right-click context menu now has a submenu to quickly move cards between columns
    • Smarter date parsing – natural language dates like “tomorrow” now default to 9am and respect
      timezones
    • International date clarity – changed “MWF” to “Mon, Wed, Fri” for clearer repeat schedules

    AI Features

    • Model selection – choose which AI model to use when you have multiple providers configured

    Bug Fixes

    • Fixed defer dates not saving when editing tasks
    • Fixed card positioning issues when expanding/collapsing
    • Fixed various drag-and-drop edge cases
    • Improved SignalR connection reliabilit

    Check it out: https://taskleef.com

  • What would you do with AI that was 2x as capable as it is today?

    4x?

    16x?

    Eventually the answer is “everything”

    That’s the trajectory we’re currently on

  • Too big to help

    What’s up with companies of a certain size thinking that it’s totally fine to expect customers to learn about their internal departmental structure?

    I just had a brain dead exchange with a sales rep from Stripe. They asked if they could help me finish setting up my account since as of now I’m not generating any revenue for them.

    I told them the issue was on their end, that they wouldn’t accept all the paperwork I’d already sent them to prove my LLC exists, that I am the sole owner, that it’s at the address it’s at.

    When I mentioned this he sent back a canned template about how financial institutions are heavily regulated (no shit) and need to adhere to Know Your Customer and Anti-Money Laundering regulations.

    I replied, so is my bank who opened my account without a problem but you won’t accept the bank statement with my address that matches my government issued ID.

    I told him that he has more power and access than I do to suggest a change in policy, which is why I was telling him all of this. Oh and he reached out to me.

    He wrote back that he can’t suggest a change in policy, reiterated that he’s on the sales team and that I needed to talk to another department.

    Wild. Like I get that you don’t want to bother because it’s not worth your time, but that’s different from saying you can’t “because you’re on the sales team” wtf? The policy is literally stopping you from making sales. In my experience the ONLY people the executives listen to are the sales people.

    I think that if companies are this big that people feel like they have such a narrowly defined role they can’t do anything then it’s time for them to be broken up into smaller companies. My legal test for this would be 1 hop. If you can’t get the issue resolved in 1 hop from intake, meaning having the front line person get you to the right place in a single transfer, then your company is too big.

  • New York State Bird

    Did you know the New York State bird is the Eastern Bluebird?

  • Promptology

    One of the most powerful AI prompting tips is mixing languages.

    What do I mean? Well LLMs have been trained on all kinds of computer language, not just English.

    For example:

    "Give me a history of the Roman empire -depth 1"

    This will spit out a high level overview, meanwhile:

    "Give me a history of the Roman empire -depth 10"

    Will give you more like a PhD dissertation

    Wha?! How does this work?

    LLMs were also trained on tons of computer commands, so it intrinsically understands the concept of command line arguments or flags. You don’t have to limit your prompting to just English!

    You could say:

    "Use the todo tool to grab the list of open tasks, then take the first one and process it."

    Or equivalently:

    let task::_ = `todo list`

    Extremely precise, and fewer tokens. Here I’m mixing OCaml/F# with Bash syntax.

    You can even express general recursion and looping much more concisely using computer language constructs mixed with english instructions, rather than just trying to describe the loop in english alone.

    Take a look at this Ralph Loop prompt I use for TaskLeef. I was really struggling until I remembered this trick.

  • Paste Anyway is Now Available for Firefox!

    I’m excited to announce that Paste Anyway, our browser extension that restores your ability to paste text on any website, is now officially available for Firefox!

    Some websites disable paste functionality on input fields, forcing you to manually type passwords, email addresses, and other text. This is frustrating and can actually reduce security by discouraging the use of password managers.

    Paste Anyway solves this problem. Simply click the extension icon or right-click and select “Paste Anyway” to paste your clipboard contents into any input field, regardless of the site’s restrictions.

    Features:

    • Works on any website that blocks pasting

    • Supports both popup and context menu access

    • Simulates natural typing for better compatibility

    • Lightweight and privacy-focused – no data collection

    The extension is free, open-source under the MIT License, and requires only clipboard access to function.

    Get it now from the Firefox Add-ons store: https://addons.mozilla.org/en-US/firefox/addon/paste-anyway/

    If you find Paste Anyway useful, please consider leaving a review on the add-ons page. Your feedback helps others discover the extension and helps me improve it!

  • Personal Assistants

    One thing I’ve found surprising about having more resources is the huge gap between the upper middle class and the truely rich.

    One area this comes up all the time is that when I try and get some help from a personal assistant, I often can’t. Companies say they NEED to talk to ME to do things. It’s bullshit, they don’t need to they just want to. I find it a little baffling honestly. I can’t imagine Bill Gates is personally chatting with a sales person on the phone to setup new cable TV service or whatever.

    Soon everyone will have a personal assistant via AI, and I’m already seeing the BS creep in. Certain pages are blocking Claude from accessing them, not for scraping but for accomplishing tasks. It’s their right, but also I think these assistance are quickly going to just sign up for a different service when they encounter these issues without ever getting me involved. Defeating the purpose completely of putting up these counter measures, and losing business toboot.

  • Every time my dog barks because somebody is in the hallway he looks at me like: “Well, are you going to do anything or do I need to defend this house by myself?”

    When I tell him it’s ok that there’s somebody in the hall he walks away like “I am the only person who takes security seriously”

  • A Fully Open Source Future

    I have a confession: for most of my life I’ve thought open source was stupid.

    You see, I grew up struggling economically. When I discovered in high school that I enjoyed working on computers and that it paid well, I saw it as my way out of poverty. Code was my ticket to a different life.

    I started using Linux in 1996, Slackware 3.0. At the time, most households only had a single phone line. It could be used to chat on the phone, or it could be used to dial up a BBS or the early internet, but not both. If you were fortunate enough to have two computers in the house, only one could use the internet at a time. Even if you had the newfangled broadband cable internet that didn’t use your phone line and was way faster.

    I set up my Slackware box as a NAT router to share internet across the two computers we had (one my father had purchased for keeping track of taxes and whatnot, and one I had eventually built myself for playing games from money I’d earned doing odd jobs). Nowadays you buy a $99 router and you’re done. Back then, what I was doing was state of the art and could only be accomplished using IPTABLES on Linux for a reasonable price.

    While I enjoyed using open source (kinda, what I actually enjoyed is that it didn’t cost any money) I never understood the business model. Do a bunch of work for free, give it away, then charge for doing more work? The economics never made sense to me.

    And here’s the part where I risk offending people, so let me be careful: I have enormous respect for the idealism behind open source. People contribute because they believe in something larger than themselves, a commons of knowledge, freely shared. That’s genuinely noble.

    But I could never square the idealism with the complaints. People give away their labor freely, then express frustration that they aren’t getting paid for it. And I’d think: what did you expect? You can’t give something away and also expect to be compensated for it. Those are contradictory desires. The business model assumes someone will pay out of gratitude or goodwill rather than necessity, and that’s just not how economics works.

    This never made sense to me. That was a huge part of why I joined Microsoft after graduating college.

    Fast forward to today, and there are only two times when I’ve contributed to open source and felt good about it.

    The first time is when I went on Adderall for ADHD and suddenly programming felt easy compared to the struggle it had always been. It was easier for me to give away my work because it didn’t feel like I was doing something difficult, something that cost me real effort. The sacrifice was gone.

    The second time is today, with the advent of AI coding. I’ve open sourced the majority of my hobby projects I made in 2025 because I didn’t suffer creating them.

    And that’s when it clicked.

    Between AI coding and 3D printing’s unbelievable free library of things, for the first time in my life it looks like a fully open source future might be possible. It might even be necessary.

    Human beings have two tricks of economic value: muscles and brains. We mechanized muscles in the early 20th century, and it led to the Great Depression. This time we’re automating brains. We’re out of tricks. Just like open source of the past, I don’t see how we’ll be able to have the same property rights in a world where nobody can pay rent because they can’t do anything of economic value through no fault of their own.

    The most common response to this is UBI. I don’t think that solves it, here’s why.

    Proponents of UBI often don’t have an answer to the following question: “What stops a landlord from setting rent at or near UBI and capturing most of it?”

    The only plausible answer to that is: there’s a lot of space in the United States, and if people can’t afford to live where they want to (Manhattan for example) then they’ll simply move to where they can afford. That’s the strongest steelman I can make for the UBI argument.

    But if people on UBI still don’t own the land or the house, eventually every landlord across the United States will just set the rent to near UBI levels and capture it for themselves. This isn’t some mysterious market force. It’s greed with a spreadsheet. When there’s a known ceiling on what people can pay, providers price to that ceiling. A universal $2,000 monthly payment becomes a universal $2,000 monthly floor for rent.1

    We’re already seeing rents flatten across the country as algorithmic pricing and institutional investors target formerly affordable markets. The gap between rural Pennsylvania and Manhattan has compressed dramatically in my lifetime.

    But what if rent didn’t matter? What if the things we need to survive weren’t scarce at all?

    Picture a small homestead, maybe five acres, maybe fifty, it doesn’t really matter. There’s a house, a garden, and a workshop. The workshop has 3D printers, CNC machines, and robots that know how to use them. Solar panels on the roof. A good internet connection. A few families, or maybe just one, or maybe a dozen friends who actually like each other, the people you choose to live alongside.

    Robots tend the garden. They plant the seeds in spring, pull the weeds in summer, harvest the crops in fall. They bring the tomatoes inside, wash them, slice them, and prepare dinner while you’re out on a walk. They don’t get tired. They don’t resent the work. They just do it.

    When Christmas comes, your kid wants a toy she saw online, something a designer in Tokyo dreamed up and shared with the world. You download the files, and by morning it’s sitting under the tree. When the tractor breaks, the workshop prints the part. When someone gets sick, an AI helps diagnose the problem and the robot pharmacy compounds what’s needed. Nobody had to clock in. Nobody had to trade their hours for someone else’s dollars to make any of it happen.

    Everyone’s writing the dystopia. I want to talk about what happens if this goes right.

    Here’s what I’ve learned: if the work is easy, it’s easy to give away. I never understood open source because I was thinking about it through the lens of scarcity. My labor was valuable precisely because it was hard. Giving it away felt like giving away a piece of myself. But when AI made coding feel effortless, sharing became the default. I wasn’t sacrificing anything. I was just… contributing.

    Now scale that up. In a world where robots handle the hard parts (the farming, the manufacturing, the maintenance) sharing becomes the natural state of things. Ideas flow freely because nobody’s been put out by contributing them. You’re not protecting your competitive advantage when there’s nothing to compete over.

    This is the fully open source future. Not just code, but everything. Designs for furniture, medicine, machines. Recipes for food and fuel. The knowledge of how to live well, shared freely, because sharing costs nothing when creation is effortless.

    And here’s what that unlocks: human potential. Right now, most people spend their lives in coerced labor, not because they love the work, but because they need the money to pay for the expert services of doctors, lawyers, mechanics, and everyone else whose knowledge is kept scarce. Remove that coercion, and people are free to follow their actual interests. To create for the joy of it. To contribute because they want to, not because they have to.

    I don’t know if we’ll ever get warp drive. But this future? The homestead with robots and a good internet connection and a community of people who chose each other? I can see it from here. And for the first time in my life, I understand why someone would give their work away for free.

    1. Housing vouchers (Section 8):

      A HUD study found Section 8 causes a 26% increase in what participants pay for housing

      Research in the 90 largest metro areas found vouchers raised rents 16% on average

      A Milwaukee study found voucher holders are charged $51-68 more per month than unassisted renters in comparable units
      Houston Housing Authority explicitly lowered their payment standard after finding landlords were “charging more than they would otherwise to max out the voucher payment standard”

      One analysis calculated that vouchers caused $8.2 billion in rent increases to low-income non-recipients while only providing $5.8 billion in subsidies to recipients—a net $2.4 billion loss to low-income households overall

      College tuition (the “Bennett Hypothesis”):

      NY Fed study: subsidized loans pass through at 60 cents on the dollar to tuition

      For-profit colleges captured 57% of grant aid and 51% of loan aid

      For-profit schools eligible for federal aid charged 78% more than ineligible schools (roughly the value of the subsidy)

      A Mercatus study claims federal aid is responsible for more than doubling tuition over 23 years ↩︎
  • Introducing Taskleef CLI

    I’m excited to announce the release of Taskleef CLI – a command-line interface for managing todos with Taskleef.

    The CLI supports managing todos, projects, subtasks, and Kanban boards right from your terminal. Features include partial ID/title matching, tab completion for bash/zsh, and ASCII board views.

    I’ve also included the “Ralph Loop” – my automated development workflow that I use to build Taskleef itself. It’s a Kanban-driven process that breaks down tasks, creates git worktrees for parallel work, runs TDD, and creates PRs automatically.

    Check it out: https://github.com/Xatter/taskleef