X Stats

Login Sign Up
@tonyennis

Tony Ennis

@tonyennis

4,360 Tweets
2,743 Following
2,723 Followers

Building software teams & mobile apps Prev: Built a bank in Asia YC S21

Date ↓ Tweet ❤️ 🔄 💬 👁 📝
Nov 03 90% of the time I see the term “Skill issue” these days, it’s used in bad faith. 4 0 4 603 80 .
Nov 03 @dustingetz @yacineMTB This take surprises me, because I’d consider myself very philosophically similar to you generally. Do you think the understandability of a system is important? And that the approach you recommend here is likely to lead to smart people adding unnecessary complexity over time? 0 0 0 0 298 .
Nov 02 If you agree with @shl, you should try @rlygoodsoftware https://t.co/jLep2I5VJF 5 0 0 398 55 .
Nov 02 PSA: Don't use ChatGPT for estimates. https://t.co/ge9Nt4iwAZ 1 0 0 243 61 .
Oct 30 Anyone know if @shadcn has a multi select dropdown or dropdown with type to search? Can't see any in their docs 1 0 0 188 111 .
Oct 29 Also - am I being dumb? Is there actually a web components version of Select2/choices that I just couldn't find? 0 0 0 328 112 .
Oct 29 Highest leverage use of Claude/Cursor so far: Spent ages trying to find a good web component version of choices.js/select2/tomselect - couldn't find anything v0 in Claude Artifacts took 15 mins, ran out of context so switched to Cursor. 45 mins later & have prototype + docs https://t.co/FLVfdJrxia 1 0 0 632 305 .
Oct 28 @mortenjust @felixlyu_1018 This looks amazing - love this workflow. One thing I notice is that in examples the frames don't seem to sync to the timings of the music - is there a way to specify the timings of each section to get them to match? 0 0 0 0 242 .
Oct 25 https://t.co/cYkrZpLUtf 2 1 0 203 23 .
Oct 24 I see SaaS founders complain often that people are reluctant to add card details/pay for their Saas. But I just went through about 20 services we're paying for but not using, and half of them are a huge pain to even figure out how to downgrade - it's no wonder people are wary of https://t.co/cOMgsXY9Lb 0 0 0 178 303 .
Oct 24 This is a great summary of an incredibly common phenomenon. I like how matter of fact it is - just states things as they are without vitriol, which is where the discourse on this stuff tends to go 6 0 0 344 196 .
Oct 23 The deeper I go down the optimal-CSS rabbithole, the more I find myself disagreeing with the philosophy behind Tailwind, which sucks because I really look up to Adam & the team. I agree with the idea of have-a-framework-so-that-you-can-write-close-to-zero-custom-css I disagree with the idea that there's no better way to achieve this than componentising most of the places where repetition occurs. I also dislike the framing of this as a dichotomy - either use 100% utility classes or write 100% custom components yourself. Blog post soon 5 0 1 398 543 .
Oct 23 @goodtweetsalex Yeah, I was thinking even longer than that to be honest. I also think there'll be a gap between when it's *possible* and when it's *prevalent*. Part of why I publish is to plant those seeds so there's less resistance and more openness when it does become possible. 1 0 0 0 280 .
Oct 23 Something else I don't see a lot of discussion on: A distinction between run-time and build-time libraries. It's not "frameworks or nothing", it's: 1. Create your html/css/js/web components from zero 2. Use a run-time library that provides utility and organizational patterns (but no build tooling dependencies). 3. Use a build-time library that provides utility and organizational patterns (but needs build tooling dependencies). I think we need to be focusing more on (2) and less on (3). 0 0 1 445 492 .
Oct 23 Checking out more js-ecosystem component libraries including shadcn today & their new sidebar component, which is world class. What I love: - They're pushing the copy-paste pattern. - They use CSS variables for config as opposed to js. - It's marketed as a single file (sidebar.tsx). What I don't love: To use sidebar.tsx you need to build your app in React. This makes the most sense *from an adoption perspective* - the industry is still focused on React. But if you were reasoning from first principles about this, and particularly if you care about the codebase being easily modifiable 1, 3, 5, and 10 years into the future, I don't think the tradeoffs of the built-in-react, versus built-on-the-platform make sense. If those were the design goals, I think you'd deliver it as sidebar.css and sidebar.js The developer experience is *very* similar - you copy paste code into your codebase, set up your css variables, and then pick the parts of the feature set you want to use and copy them over. The main difference is that instead of writing jsx components, you're writing html - but the code looks remarkably similar: with attributes. What am I missing here? 0 0 0 210 1.2k .
Oct 23 Another data point here: CSS went through a build-time library phase (scss, sass etc), where it was the norm to use a higher level language and a build step because CSS couldn't do things like variables, nesting, calculations Now CSS has those things, and we're removing these build time libraries wholesale. Won't this also be true for js meta-frameworks at some point? If so, when? 5 0 0 729 387 .
Oct 19 @rauchg what’s you do to get the inventory in? Public API somewhere? 0 0 0 146 68 .
Oct 19 K fuck it, gonna also build this in html first rails as a comparison. 8 0 1 542 69 .
Oct 18 What are the arguments that declarative frameworks (React, vue, svelte etc) buck the "Obsoleted by The Platform" trend? 1 0 1 676 119 .
Oct 18 https://t.co/ovDGthSA8R 0 0 0 143 23 .
Oct 18 The history of web development: 1. Frameworks and tooling (abstractions) are built to do what the platform can't. 2. The platform can now do those things. 3. Abstractions get deprecated. Platform's capabilities grow On a long enough horizon, the abstractions are the tech debt https://t.co/wu58C4fQad 14 5 4 4.2k 302 .
Oct 17 Ok, maybe I can just open up dev tools and see the CSS file/s there. The dev tools 👇 https://t.co/Bgu2qQ5xil 1 0 0 146 108 .
Oct 17 - Read the docs and add the required changes - Reload the browser - no change. Let's debug - First - is the css file being imported? - lets view source - The source 👇 https://t.co/lv6YM9vUpX 1 0 1 434 190 .
Oct 17 You'll never convince me that this is how we will be writing/extending html in 5 to 10 years time. https://t.co/usiS76zTSM 9 0 3 849 122 .
Oct 14 This paragraph is something else. https://t.co/7QWl4FrZSx 9 0 2 868 57 .
Oct 14 Just read a few bits on the Wordpress situation and my main thought is how did Matt maintain a completely different public persona to his real one for so long. 4 0 1 1.2k 159 .
Oct 13 Every time I come to the US I’m reminded to never trust twitter takes on cities. They are comically misguiding 0 0 0 472 110 .
Oct 11 Put me in the *extremely skeptical* group for this happening. Many other ways AI will disrupt things, but humans mostly want their tools to be predictable, so I don’t think we’ll see shapeshifting software become widespread. 0 0 0 527 225 .
Oct 11 @rauchg This is what https://t.co/bED1hL2qXx does! 82 0 0 0 50 .
Oct 10 @powell_eric @rails I personally most like Svelte because code more closely resembles html & I'm not a big fan of jsx, *but* I think I would still go with react because it's substantially larger ecosystem wise (availability of packages/docs etc) & that's the main benefit of going js-land. 1 0 0 0 297 .
Oct 10 This looks like the smartest way to combine the benefits of Rails on the backend and js-ecosystem on the frontend. If I wasn't all in on server rendered Rails this is where I would be looking 100%. So awesome to see @rails as the second officially supported framework. Great work @skryukov_dev & @evilmartians 12 1 1 2.3k 311 .
Oct 10 Why in the world are payment companies charging *percentages* for bank transfers? 10 0 2 1.6k 81 .
Oct 09 @schwad_rb What language is that? (I agree 100%) 1 0 0 0 48 .
Oct 07 Really enjoyed doing this with @shl. Kudos to him for keeping an open mind. Glad we could clear things up on my beloved @rails 50 3 4 14.1k 126 .
Oct 07 RT @shl: First session starting now! https://t.co/WWAhIKgqxl 0 4 0 0 61 .
Oct 06 Doing more cursor-coding recently - an observation: It's difficult to switch brain-modes between tell-cursor-what-to-write and write-the-code-yourself, even if the latter is actually quicker than typing out a prompt. Assuming I'm not an outlier, I *think* this will mean people who go the ai-assisted route will tend toward writing less and less code over time, eventually approaching zero. Not sure how I feel about that yet. 7 0 3 865 431 .
Oct 06 Love this concept. I’m a leverage programmer for sure. 4 0 0 891 54 .
Oct 05 Wonder why cursor doesn't support meta questions about cursor configuration itself - this seems silly https://t.co/q1dDf4OB1Y 1 0 0 330 125 .
Oct 05 Went to see Joker 2 last night. Still honestly confused. I kept wondering if maybe it felt bad because it’s not predictable and everything else today is, but I think actually no it was just quite bad. 1 0 1 338 200 .
Oct 05 I’m in SF and Waymos are EVERYWHERE and every time I see one I tilt my head to check if there’s a driver and the wonder and amazement of there not being one still hasn’t worn off 9 0 2 586 178 .
Oct 04 Seems like everyone's a fractional cto these days - I thought this was more supply-driven than demand-driven, but maybe I was wrong https://t.co/LSJ9Iajiix 1 0 0 264 155 .
Oct 04 Just had a look at the PhotoAi reviews on TrustPilot. I think there are a lot of things to learn from Pieter but his focus on automate-customer-service is his biggest weakness and not IMO something to emulate/glorify. The HeadshotPro reviews show how to do it well. 0 0 0 268 267 .
Oct 04 @adamrdaniels @shl @unpolyjs Yeah behind the scenes It’s literally a link that adds a new category to the database and then redirects to the page again and reloads the whole page. Htmx is smart enough to 1. Follow the redirect without a page load and 2. Merge the divs that already exist. Really nice 0 0 0 0 300 .
Oct 03 @hernansartorio trying to get in to pagy but can't find the reset password link - is there one somewhere? 1 0 0 0 105 .
Oct 03 @shl All this in ~30 lines of code, mostly html https://t.co/b3IlWFCvZ3 1 0 0 198 71 .
Oct 03 For example to build one of the form flows @shl mentioned, the solution didn't really require a lot of custom htmx. It was, roughly speaking: - Add hx-boost to the body and use plain old Rails form helpers. - Use a css snippet and hx-indicator to show loading spinners on link clicks and form submits. - Use hx-preserve to prevent elements being replaced on new page load. But it takes quite a long time to figure those things out. 10 1 2 940 435 .
Oct 03 This is the thing that needs to be solved for the server rendered approach to become more prevalent. It's *possible* to do really nice, simple stuff with htmx, it's just really not obvious. https://t.co/CWtXfgABES 3 0 0 1.4k 213 .
Oct 02 The history of my view on when you should use Tailwind - 2020: 100% in Tailwind - 2023: 90% in Tailwind - 2024: 20% in Tailwind (*if you have good css standards/library) There are just so many component-like things in web apps and I don't think packaging everything at the view layer has better DX or leads to better UI/UX. The problem has been that if you don't do Tailwind, you have to build our your own library/standards, which is a lot of work. 1 0 0 274 452 .
Sep 30 @Shpigford @revisedev Yes but also suggesting to show that in the video next time as that’s the impressive part more so than the code 0 0 0 0 133 .
Sep 30 @Shpigford @revisedev Show the feature working though!? If so that’s awesome 1 0 0 0 76 .
Sep 30 Unless something has changed in the last year Heroku is still the all round best provider for medium-traffic apps even at those prices. Provided you swap out heroku postgres for RDS and limit addons 4 0 1 657 198 .
Sep 30 @IanConnolly @willobri 👀 I actually thought to myself “ah that sounds like something Ian might be at” See you there! 2 0 0 0 119 .
Sep 30 @willobri Great timing. Add me? 4 0 0 0 31 .
Sep 30 Had a good chat with @shl about the future of software dev and whether @rails is tech debt. We agreed on way more than we disagreed on - he’s given it a lot of thought and is much more nuanced than comes across here. (I also don’t think he *still* thinks rails is tech debt, but I’ll let him comment on that) His first point is that you get much more out of the box with next/react to build polished, slick frontends. Which you kind of have to figure out in rails apps (I agree). His second point was that having everything typed makes it much easier to work with AI, and makes you much less worried about breaking things. I can see this but I think there are non-obvious trade offs to adding layers on top of the platform that become more of an issue over time - so this really depends what you’re optimising for. We’re gonna do a live stream where we both build something out - me in rails and him in @nextjs, to let people see the benefits/trade-offs of each. Should be fun! 63 1 10 5.7k 982 .
Sep 28 @ohitslloydeh @GregMolnar This is anecdotal from Rails world but I think 1. The average new junior web developer thinks js ecosystem before rails, and 2. The average mature rails company isn’t hiring a lot of juniors 2 1 0 0 216 .
Sep 28 @GregMolnar Because he has a ton of influence and people listen to him. Rails is still in the danger zone from a talent pipeline perspective so correcting the idea that it’s a legacy framework is important/worthwhile 11 0 0 0 216 .
Sep 27 @shl @htmx_org Thanks so much for that example! This is the exact kind of thing that confused us too. 0 0 0 0 101 .
Sep 27 @shl Yes! And that’s a huge issue! Not just with htmx but Rails more generally 1 0 0 0 78 .
Sep 27 Have had multiple interactions in the last few days (on here and at Rails World) that make me think maybe I should do a little htmx-on-rails course - there’d also be heavy overlap with Turbo because it’s ultimately about “thinking in hypertext” as it applies to rails 6 0 1 896 267 .
Sep 27 @shl That’s a pity - it also took me/us a few months to figure out, and was more about figuring out what to ignore conceptually. But we’re at a point where there aren’t any complex interactions that aren’t covered in 2/3 blog posts/guides we’ve written internally, and we’ve done quite… 0 0 0 0 286 .
Sep 27 @pom_I_moq Example? 0 0 0 0 19 .
Sep 27 One of the things we're doing with all new joiners at @rlygoodsoftware now is having them go through @MobbinDesign and literally rebuild the products in there (with our stack/handbook of course), and with daily code review from me. This was built by 2 devs over 2-3 weeks. Note the details (loading states, animations etc) - it all feels reasonably smooth (with some polish to be added) but it's literally just partial page updates on the links and forms, a small set of ~20 or so reusable css classes, and a sprinkles library for minor frontend state. Posting because I keep hearing people saying modern web apps aren't possible to build without a "modern" stack like React (cough @shl) and it is demonstrably not true, *provided* you've done the work to find the right/bets abstractions (which admittedly is harder in non-react land). 3 1 0 440 849 .
Sep 27 @shl Got you - I do agree Rails needs more obvious ways to build really nice polished stuff, and turbo/hotwire/stimulus are not it IMO. On the other hand I still think for low/medium interactivity sites, HTML with something to handle partial page updates, and a sprinkles library for… 12 1 0 0 286 .
Sep 27 @shl You also haven’t clarified what your reasoning is though. Which parts specifically are bad as you see it? Is it rich text/offline/higly interactive screens? Or just forms and stuff? 21 0 0 0 186 .
Sep 26 “I love how far the discourse has moved. I don’t even have to make the joke” @dhh https://t.co/hmnNVvaOBA 1 0 0 253 106 .
Sep 25 @Mailtrap what is this? Please remove my card from your service which I have already unsubscribed from - this is an extremely dark pattern. Thanks https://t.co/kRYDJweAe7 0 0 0 0 170 .
Sep 25 @andrewculver See you there! 1 0 0 0 28 .
Sep 24 @FORSBERGtwo Hey Bjorn is this still available? Happy to pay for it 0 0 0 0 67 .
Sep 24 @RUTVIKCHANDLA @_jr @rails Still available? 0 0 0 0 43 .
Sep 24 @bradgessler There is one - webflow uses it and it works with Cloudflare. But it’s also buggy and doesn’t take into account existing records/collisions. Can’t recall the name 1 0 0 0 174 .
Sep 23 Watched Caleb's flux demo and had a few thoughts. 1. Wow, we have basically the exact same primitives for our in-house css system (minus the layouts). 2. 95% of the value is in the CSS - coupling it to Laravel/Livewire seems limiting when it could be sold as CSS only and slot into anyone's stack. 3. Maybe I should sell ours too 🤔 4 0 1 530 332 .
Sep 23 "Humanity discovered an algorithm that can really truly, learn the rules that produce any distribution of data" @sama this phrasing is interesting. Are there any differences between this definition, and what humans would define as "ability to reason"? https://t.co/t192wmeUM7 0 0 0 181 276 .
Sep 23 Today I learned there are online services that will print and post a Google doc for €5. Can't believe I didn't know that was a thing, saves so much headache. 0 0 1 219 157 .
Sep 22 @p_millerd 1. Supernuclear newsletter https://t.co/rqMi7Mhe4a 2. I’ve saved a bunch of tweets and links here https://t.co/pRL0NOY8my 2 0 0 0 132 .
Sep 21 https://t.co/wpBK78AwMK 1 0 0 197 23 .
Sep 19 Happened to see both of these in the last 48 hours. “My old ass” = great movie “Book of Mormon” (the broadway show) = not that good 0 0 0 178 133 .
Sep 14 If you’re gonna go Cybertruck, why not go full Cybertruck 0 0 0 244 57 .
Sep 14 https://t.co/KAfAAyxJDd 0 0 1 349 23 .
Sep 13 This is bananas 0 0 0 181 15 .
Sep 10 @Shpigford Disagree slightly. Your db latency is multiplied by the number of queries on the page, so if you add features and have pages doing say 50 queries, which can easily happen if you don’t watch out for n+1s, it can get slow fast. Prob not Virginia to NY, but generally having app and… 3 0 0 0 291 .
Sep 10 @IMAC2 For the past decade the opposite has happened - It has been extremely common to see people using javascript to do things that are trivial to do with html/css and where using javascript makes the code and the product worse. I agree that using hacks or features that aren't… https://t.co/cibwOptGBs 3 0 0 0 303 .
Sep 08 @tabacitu @ste_bau I built this, for that: https://t.co/aSBC2Ao3k6 1 0 0 0 66 .
Sep 08 This is a real message served from AWS, in 2024. 🤦‍♂️ https://t.co/LrSkcCaNl5 1 0 0 213 77 .
Sep 07 @MrNick_Buzz @patricklu10 Hey Nick! What’s the best way to chat about this? Our model is heavily inspired by you guys 😁 https://t.co/Cj5qRX7sEX 0 0 0 0 144 .
Sep 06 @Shpigford @synth_finance @Hetzner_Online @digitalocean @hatchboxio App server and db server in different locations gonna make that feel a bit slower than it needs to. Or are they same region? 2 0 0 0 192 .
Sep 06 Sometimes I forget there are people who *don’t* value these things above all else. 2 0 0 271 82 .
Sep 05 I’ll say it because many in the Laravel ecosystem will feel too conflicted to say it (because Taylor has done so much and is an absolute machine). But this probably isn’t good news for the community/ecosystem - almost impossible to get the returns a series A investor will be expecting without juicing revenue and moving attention up market. Hope I’m wrong 2 0 1 421 356 .
Sep 05 You either die a tailwind user, or live long enough to end up building your own css ui kit 🙃 2 0 0 700 92 .
Sep 05 What if I told you you could have... - UIs with reactivity and smooth loading states - That load in 1/10th of a second - That preserve scroll state - That preserve state when the page is reloaded Using only html, with plain links and a single attribute on your body tag. @rails with @htmx_org is the way. 7 0 1 337 327 .
Sep 04 Trademark violation spotted @htmx_org https://t.co/ok1Srf2BwE 4 0 0 302 61 .
Sep 04 I’m convinced Hetzner just blocks like every third person who signs up. Happened me a year ago, came back a few months ago and it worked. Weird 0 0 0 185 143 .
Sep 03 To be clear we do this for more than half of our clients, but for some who don't, and many of the companies I chat to, this is an issue. 0 0 0 83 136 .
Sep 03 The main remaining large challenge I have working with clients: Almost no one wants to do the "grunt work" required in the product role - creating new tickets for features, bugs, improvements. Improving existing ones. Writing updates etc. Everyone wants to be a strategist 1 0 1 176 274 .
Sep 03 Lots of talk on the timeline about micro managing after the Paul Graham essay, and I think repositioning “micro managing” as a positive thing is dumb. The thing they’re referring to - being involved in the details and having veto power - is IMO different to micro management. Using the same term is going to backfire when neurotic CEOs use it as an excuse for toxic culture. 2 0 0 170 376 .
Sep 03 @finereli All good my side 0 0 0 0 26 .
Sep 01 Dutch pragmatism is allowing a small group of 3 (us) to sit in your café for a few hours even though it's technically not open til 5, because they asked to and it's not doing any harm. Many such examples - love this culture. 2 0 0 287 224 .
Sep 01 @finereli This is smart given you saved me a 5 figure deal and we’ve only been working together for 3 weeks 1 0 0 0 107 .
Aug 31 @htmxlabs Can confirm https://t.co/hIYH7Jc0QE 3 1 0 0 45 .
Aug 31 Another week, another meeting with a founder who's convinced they need a "visionary" technical founding team member for their boxware startup. 1 0 0 211 142 .
Aug 29 This is about one of the best reasons I could think of to get filthy rich 2 0 0 320 73 .
Showing 801-900 of 4360 tweets
← Prev 1 ... 8 9 10 ... 44 Next →