Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

> If you write it in Go and package it as a single binary. ... > You can't if you write it in a scripting language that requires tons of programs to already exist on the system

You are close, but you are not exactly right.

If consider real case of application, which create some value (I don't mean just money, may be for example community value or scientific), you will need to depend on some libraries or tools.

This is how our civilization works, we don't create all things from scratch every time, but instead, we take ready parts and construct something new from them, possibly adding our new parts.

Some parts could been compiled/linked statically inside your big one file package, some only dynamically.

Scripting languages difference is just that they usually shipped with rich development library, and in many cases it is possible to cut unused parts of these libraries.

For example, Python now shipped even with sqlite database included, sure this is not tiny package, but it is used in many applications.

To be more precise, python for android (p4a), when compiled as helloworld, results in approximately 6mbytes .apk. As I said before, there all python standard library compiled with cython.

Sure, if you will compile helloworld native, will got something within 200k, but if add any library, it will grow, and for real application, 6mb is not to much currently.

If add functionality to p4a helloworld, it grow very slowly, because compiled Python representation is relatively compact.

BTW it could be interesting project, to add to Python/Cython possibility, to create single binary package, so it will not decompressed to fs hierarchy, but read all from those binary as need.



> If consider real case of application, which create some value (I don't mean just money, may be for example community value or scientific), you will need to depend on some libraries or tools.

> This is how our civilization works, we don't create all things from scratch every time, but instead, we take ready parts and construct something new from them, possibly adding our new parts.

This is very dubious.

If all you do is compose parts that already exist, then anyone can do it and your value add is almost nothing.

Sure, if you try to build everything from zero, it will take you forever.

But obviously, if you do what I said (what you quoted me), you are not building from scratch.

First of all, you are using the Go language and compiler. Second, you are relying on existing operating systems (likely linux) to run your program. Third, you are relying on the internet to exist so that your program can reliably serve content to users. Forth, you rely on the fact that your users have a reliable web browser that can display this content. Fifth, you are free to use any library in your source code.


> If all you do is compose parts that already exist, then anyone can do it and your value add is almost nothing.

Looks like you believe to Marx theories, that anybody could JUST make value. I mean, on such markets, you really could start sells from zero or with very limited resources.

But this is true only for very early stages of market, when competition does not matter. - On developed markets, competition is very significant, so to make moderate success, you have to use external resources - grants, credits, crowdfunding, etc.

What Marx don't said, that people divided to two big groups - passionaries (mostly entrepreneurs), and ordinary humans. They different in very important thing - passionaries have from nature need to change world (ordinary does not have such need at all), and on some moment of passionary life, earlier better, he switches to famous circle: 1. accumulate resources. 2. invest resources to some project to change environment. 3. when project on 2 approaches to some endpoint, have strong signs of success or failure, return to 1.

Ordinary people just satisfy their needs of mostly lowest levels of Maslow pyramid, they don't accumulate resources, they don't try to invest, and so they have not any success in projects, even when I agree, that many projects need very little resources to start profitable business.

Only exception, when ordinary human face some very easy to enter and extremely profitable opportunity, which does not include any risks or responsibility, than greed could defeat laziness.

But such things don't happen frequently. As I said before, most real opportunities include risks, include need to build circle of trust (so people will give their resources for free), or just get somewhere resources with conditions, like credits from financial entities.

So, return to our technical things, you are right, that exist totally free things, which could use anybody, but in most cases, they are not enough to make value, in many cases they are useless or they used to create barrier to enter this business.

I even must accent, I've been involved in few opensource projects, and in near all successful projects, their lead constantly made decisions, which features will not include in free version, to motivate people pay for them.

Most known example of free project, created as barrier - Eclipse IDE, which destroyed really big markets where lived lot of businesses - Borland, Watcom, Tiny C, etc, and when appear Eclipse, they become unprofitable.

So, life is struggle, but I repeat - technically you are absoultely right, in that near anything possible, if somebody else pay for it :)


I love how you make a faulty assumption and then go on a huge rant disproving it as if that matters.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: