Live data from Hacker News

The One-Person Framework in Practice

link.mail.beehiiv.com

151–160 of 172 posts

Re: The One-Person Framework in Practice

#151
post #77

Earlier quoted context omitted.

I just wish Ruby had something with the widespread adoption of TypeScript. Once a project gets large enough it's really painful not having types Sorbet and RBS are okay but they don't really compare

Jake Zimmerman wrote this excellent blog post[1] on the current state of Sorbet. I was impressed at recent changes in the Sorbet syntax but also with the proposal that we make code comments available to the ruby VM. That would allow Sorbet to adopt the rbs-inline comment syntax for both runtime checks and static analysis. So there does appear to be a way forward on this, which is pretty exciting. 1. https://blog.jez.…

This is a great presentation/article, thank you for posting it since I haven't seen it go by elsewhere.

What holds me, personally, from Sorbet is the fact that it tries (unwillingly) to dictate which features of Ruby are "bad" by not supporting them - specifically, "prepend" and Refinements. Now, Refinements I havent' seen used in the wild, but "prepend" I use the living hell of - both when designing modules and when overriding other libraries (with moderation, and when I do it is gawddam' well necessary).

While I can appreciate opinions, I am not really motivated to adopt a tool which snaps me on the fingers because I use the tools I know the utility of. I am not working at Stripe nor at Shop :-) Another thing I could really appreciate would be ad-hoc interfaces a-la Go - and more support for duck-typing in general. Maybe I missed this in Sorbet, but it seemed the idea was to "inherit like you are told to and shut up" - which is not how truly great things can get done in Ruby, at least in my experience.

Interesting to see where Sorbet goes in the coming years - and stoked for more RBS/Sorbet interplay!

Re: The One-Person Framework in Practice

#152

Earlier quoted context omitted.

If you hate it, don't torment yourself....make a business case to switch. Better developer productivity is a thing.

Developer productivity is overrated. Billions of people deal with slow web apps that collectively waste millions of years of people's lives so that the a few developers can save a few hours of work. We could increase global white collar productivity by 10-20% almost immediately if developers would stop valuing their productivity over the productivity of their end users.

I have worked on quite a few Ruby web apps and built quite a few myself. Maybe 3% of the cases I encountered were about Ruby not being performant enough to do what I needed it to do. Where did the rest of the productivity of end users get lost?

Org dysfunction.

Note that those were web apps - so the user did not have to install the runtime, dependencies etc. to use the software. That is a whole other story (and not a very merry one, at least for all the scripting languages out there).

Re: The One-Person Framework in Practice

#153

Is there any other framework which can claim that it compares well to Ruby on Rails speed of development? I.e. conventions over configurations? Asking as I don’t want to learn ruby

In each of the dynamic frameworks I have worked in, besides lacking types, the biggest problem is domain separation. In 4 out of six large, dynamic code bases I have worked in, everything becomes spaghetti. This joins with that which n+1s with yadda yadda. You end up with dependencies that prevent billing options because you can't separate the billing structure from the user model from the product table. Queries star…

This rings true, but I also saw a lot of situations where just as spaghetti was being tangled, the few folks who resisted it were overruled, again and again.

This is hardly the property of languages or frameworks - just orgs being orgs and incentives being incentives. I don't see why a codebase in a compiled lang would not have queries that "start joining and joining and you get monstrosities of queries" if the business logic demands that queriage to be queriaged?.. Maybe you could make a case to the business that the speed of rework has to be reduced "because static lang and we do things properly here" - but the same can be done with dynamic langs, just with a bit of rigor.

Re: The One-Person Framework in Practice

#154

Having worked as a basically one person Rails shop I think one of the things that makes a big difference on productivity is whether you can say no to the big react front end or not. (And I say that having come to like GQL: It's still like 5x the workload to have a react app + Rails back end.)

I'd say having the luxury to say "No" to things is underrated, and it does come packaged with small teams.

Re: The One-Person Framework in Practice

#155
post #25

Earlier quoted context omitted.

I learned to code professionally in Ruby but wrote C# .Net for almost 10 years. I've probably forgotten more about .Net than I ever learned about Ruby at this point so take what I say with a grain of salt. .Net has tons of configuration and boilerplate so I can't say that it's exactly the same in that sense, but the more meta theme is that just as there is a Rails way to do things, there is a Microsoft way to do thin…

I think the Java people would say that if you want one way to do things, go do it the Microsoft way :) But I guess Spring tried to do that, but probably didn't have the resources that Microsoft does.

I wish I could :)

Re: The One-Person Framework in Practice

#156
post #126

Earlier quoted context omitted.

final as in you're out of talks for now?? i clicked thru but saw no obvious explanation of what change you're making for those a bit out of the loop

from searls' link: > The presentation summarizes a year of my work but it also embeds countless little things life taught me over the 15 years since I started speaking at user groups and regional conferences. > But this chapter of my life has now concluded. I'm excited to be moving on to other things.

yeah i read that but i was hoping more on the why, why did he have to stop speaking when he can still speak + move on to other things

Re: The One-Person Framework in Practice

#157

Earlier quoted context omitted.

I have heard that for years and I just don't get it. Magic abounds. The test assertions and testing libraries are whole DSLs that require a separate/additional learning process with inconsistent chaining with inconsistent return types. Being able to overwrite anything in the language gives rise to things like unicode whitespace being misinterpreted as an undefined function. You can define methods by combining method…

I always thought it was funny that people criticize the "magic" of certain frameworks, when at its core, almost all programming is magic (since it is almost always an abstraction). And there is probably no clear distinction on where non-magic ends and magic starts. But somehow, no one complains about having a GC instead of needing to use `malloc`/`free` or `fetch` doing the DNS query automatically. And that's exactly…

Magic isn't just abstractions. Ruby magic tends towards meta-programming and making as much behavior implicit as possible (a lot of this is cultural). Things that tend to make it fun to write but hell to debug

Re: The One-Person Framework in Practice

#158

How does a solo developer/maintainer with a production app and thousands of active users take a "disconnected" long-week vacation?

I’m in a similar position, and that’s the fun part, I don’t. I travel a lot, but have to bring a laptop be a few hours from internet access at most, which thankfully is almost anywhere I want to travel to. Even Everest Base Camp trek has internet.

Re: The One-Person Framework in Practice

#159

Earlier quoted context omitted.

Is there a 1st party auth package? I can't remember any - They were guiding you to the adoniscasts videos, which some are paid. Very hard to get traction like this.

https://docs.adonisjs.com/guides/authentication/introduction "AdonisJS ships with a robust and secure authentication system you can use to log in and authenticate users of your application. Be it a server-rendered application, a SPA client, or a mobile app, you can set up authentication for all of them."

There's no login/register/reset/forget pages generated. Neither their controllers. Only some basic middleware for that.

Re: The One-Person Framework in Practice

#160

I don't know if the framework really matters that much? Just choose anything popular and there should be plenty of help available. I've been using Laravel for about 11 years now. I hate it, but it keeps on trucking along so I've resisted the urge to do a complete rewrite. I don't think anything is particularly slow to develop. It's the business side of things that's the hard part.

When I moved from PHP to Ruby (and Rails), I discovered how much fun programming can be. Ruby just optimizes for the right thing, Developer happiness.

Maybe that was true for PHP before 7. For me php make sense. Ruby on the other hand feels like it was made by an alien who learned human language by reading books that were shredded to pieces and glued together randomly
Post reply on HN