Live data from Hacker News

Write libraries instead of services, where possible

catern.com

201–210 of 328 posts

Re: Write libraries instead of services, where possible

#201

> A service has constant administration costs which are paid by the service provider. A properly designed library instead moves these costs to the users of the library. I agree with the articles point, but this introduction, right there, is why it's not happening. SaaS turns your startup into a unicorn and yourself into a rich person. Or at least that's what you are hoping/aiming for. A library is not going to make y…

Not every one is a rational agent looking to maximize their earnings, some devs have soul in the game.

Re: Write libraries instead of services, where possible

#202

Earlier quoted context omitted.

It’s not hard to find a T-shirt I can wear over and over again without having to keep paying for it. Nowadays it’s nearly impossible to find software that lets you pay once at a reasonable price. So yeah, it is very frustrating to fight off subscriptions.

So write your own software for your needs and sell it for a one off price? But you presumably won't because the incentive isn't great enough. Which is exactly why people milk subs. And if you're not willing to do it for the incentive of a one off price, why should anyone else be?

And the end result of this whole thing is too-expensive software that no one is willing to pay for and doesn't get used, and no one's problem is actually solved. And then when the "startup" fails, the code is of course not turned into a library, and it all starts again.

Re: Write libraries instead of services, where possible

#203
post #149

Earlier quoted context omitted.

this sounds really neat and I'm going to go read about it! I also wanted to call out that this ~sentence has just... a bunch of things that seem like jargon/names within the community? As an outsider, I have no idea what they mean: > make a Genserver or Oban worker and mount it in the supervision tree. The Beam takes care of maintaining the process it sounds very sci-fi :)

sorry! so I'll clarify Elixir inherits a library called OTP from erlang which is a set of primitives for building massively concurrent systems. A Genserver is sort of like a Base Class for a object that runs as an independant process that plugs into OTP. By inheriting/implementing the Genserver behavior, you create an independant process that can be mounted in an OTP supervision tree which runs at the top of your app…

Might be helpful to know GenServer is short for "generic server"

Re: Write libraries instead of services, where possible

#204
post #149

Earlier quoted context omitted.

this sounds really neat and I'm going to go read about it! I also wanted to call out that this ~sentence has just... a bunch of things that seem like jargon/names within the community? As an outsider, I have no idea what they mean: > make a Genserver or Oban worker and mount it in the supervision tree. The Beam takes care of maintaining the process it sounds very sci-fi :)

sorry! so I'll clarify Elixir inherits a library called OTP from erlang which is a set of primitives for building massively concurrent systems. A Genserver is sort of like a Base Class for a object that runs as an independant process that plugs into OTP. By inheriting/implementing the Genserver behavior, you create an independant process that can be mounted in an OTP supervision tree which runs at the top of your app…

What's it like using stored procedures with Ecto?

Re: Write libraries instead of services, where possible

#206
post #131

Earlier quoted context omitted.

You're right. The fact that people can make outsize rewards from subscription services are the reason that even small single use tools are now 'services'. I have a piece of software that removes the background from my video feed. It's a subscription, and it regularly phones home. I have a piece of software that lets me visually combine, rotate and reorder pdfs. It's a subscription. Even the simplest things, like a 't…

> It's miserable fighting off a million people who want to help me for 'less than the daily price of your coffee'. Is it also miserable "fighting off" a million companies who want to sell you stuff for the daily price of a coffee? Stuff like T-Shirts, books, newspapers, candy, etc? You seem to have a patronizing attitude towards software products/services. You seem to think that they are so simple, that they should b…

This was the attitude that made me not use the graphic design degree that I got and move into software development (other than the fact that I had been building and using computers since I was 12). People look at the arts as a "thing you should just do because you enjoy it". Can you make me a logo in your spare time is a common refrain. It seems to have trickled down to software development.

Anything anyone has a true passion for, eventually, will be seen as a free commodity by interested parties, unfortunately. I wish it weren't so, but business acumen and true passion are often enemies.

Re: Write libraries instead of services, where possible

#207
post #108

Earlier quoted context omitted.

but how you monetize a library? Oh that's a burning question for me. I'm finishing a C lib that - if all goes well - will be very useful. I worked hard on it and now I don't know how to license it. I'm okay with non-profit OSS projects to use it freely, but I need others to pay for it. How ? How do you express such a dual license ? And how do you ensure for-profit users reward you ? That's not the part I prefer in th…

GPLv3 with a commercial exception. Corporate suits don't like the GPL, so if they buy a commercial licence they support the project without having to redistribute (You can also offer support)

I think AGPL is the much more effective open source license if your intention is to have corporations too afraid to use it under the open license and to negotiate a commercial exception license.

Plenty of companies will use GPL code, especially for hosted software.

Re: Write libraries instead of services, where possible

#208

Earlier quoted context omitted.

Stealing a library is easier than stealing a service.

Including a stolen library you in commercial software that you distribute is easy to do but also easy to detect, so it only means that you're willing to pay a triple of the price in damages.

Now you're in the business of policing your users. Not fun if what you like to do is solving problems with code.

Re: Write libraries instead of services, where possible

#209

Earlier quoted context omitted.

sorry! so I'll clarify Elixir inherits a library called OTP from erlang which is a set of primitives for building massively concurrent systems. A Genserver is sort of like a Base Class for a object that runs as an independant process that plugs into OTP. By inheriting/implementing the Genserver behavior, you create an independant process that can be mounted in an OTP supervision tree which runs at the top of your app…

What's it like using stored procedures with Ecto?

surprisingly easy.

1. if I'm calling directly, I can just use a raw sql query 2. views can be backed with a read only ecto model 3. triggers can be set to run without your ecto code even being aware of it. 4. for custom errors, you can add overides for the error handling in ecto to transform things like deadlocks to 400 errors

Re: Write libraries instead of services, where possible

#210

> A service has constant administration costs which are paid by the service provider. A properly designed library instead moves these costs to the users of the library. I agree with the articles point, but this introduction, right there, is why it's not happening. SaaS turns your startup into a unicorn and yourself into a rich person. Or at least that's what you are hoping/aiming for. A library is not going to make y…

A closed platform could charge developers for library usage. (Similar to same-cloud services).

I imagined this dystopian future 20 years ago, but it hasn't happened yet.

Post reply on HN