Ask HN: losing faith in the startup where I'm employee #1 - <AUTHOR> I'm very new to the startup world. A year ago, I left academia to join a startup as the first engineer employee. The skies were bright, we were going to change the world and become rich and all be happy together.
Now a year later, things are way more gloom. We haven't raised any money, as of today we have effectively 0 active users, and our total revenue over the past year has been ~$100.
Out of 3 founders, none is technical (the CTO is a very, very well connected industry veteran though), and they are all very unfocused and out of touch with certain realities (for example, they filed a patent for a silly tech idea right after incorporation and keep trying to implement that technology in products although it doesn't really solve anything).
During meetings, I always feel like a killjoy by attempting to be realistic and focused and reserved about the brand new idea they come up with every other week and that I need to get started on right when the meeting ends.
I don't feel like it'll get better, and although it was a great opportunity I think it's time for me to move on to brighter horizons.
The main problem is that I've grown to really like the founders on a personal level, they are really well connected so I wouldn't want them to tarnish my reputation as a young engineer completely new to the valley/startup world, and if I leave, the company will probably die off as I'm the only one writing code and making products exist (they'd probably end up paying contractors/freelancers as they can't afford to be competitive on salary or benefits).
I think these last few points might be the result of my inexperience with startups and that I dug myself into that hole— but any insight or advice would be very, very much appreciated.<p>Thanks! <comment><USER3> Everybody keeps telling you that you ought to leave, but that advice isn't terribly helpful, since it is obvious that you already know you need to do that.

Often, many of the most difficult decisions in life are not _what_ you should do - because deep down, you already know - but _how_ do it. This is true for your decision right now.

A few thoughts for you on that:

1\. Irrevocably commit to doing it. Book a meeting with the founders to discuss "something important". Or tell your significant other that you've decided to exit by a certain date. Just do _something_ that commits you to this course of action.

2\. Get creative about why you're leaving. Instead of leaving because the company is a sinking ship, think of a diplomatic, but still truthful, reason for exiting. For example, focus on what you are going to do next, and supply that as the reason: "I'm much more interested in working on this kind of technology/product/etc. and I want to go pursue my dream."

3\. If you can't bring yourself to tell them your decision face-to-face, put it in writing. Email them to tell them what you've decided, and close it with, "Can we talk?" Then hash it out with them. This is a great way to be done with something (see #1) because once the email is sent, it's sent.

4\. Always remember that it is never as bad as you think it will be. It's just business, they will understand your reasons if they are reasonable businesspeople too. If they're decent individuals you'll stay on good terms with them. They'll miss you, they'll be "disappointed", but they'll get over it. And don't be surprised if they've already expected you to do this months ago. It is usually obvious to employers when their employees are unhappy or frustrated.

You already know what to do. Now go get it done! Best of luck to you.

<comment><USER4> I think there should be a step 0

0\. Get your CV out there

So you can start some leads and if they ask for some weeks notice, you'll have something going (at least some leads) when you're no longer there

<comment><USER5> Besides the fact that circulating resumes is just about the worst way to find a new gig, I don't understand the mentality that suggests he should give notice _before_ finding a place to land.

Find a new job, then give notice.

I've worked in this field since 1995 and am an employer at a fairly sizable team now and I'll tell you this is pretty close to industry standard. Competent employers do not have an expectation that they're going to get a heads-up before you start interviewing.

<comment><USER6> "Competent employers do not have an expectation that they're going to get a heads-up before you start interviewing."

1987\. My sister didn't know there was a root user on a Unix system. I found out she was interviewing after seeing her resume in her home directory.

<comment><USER5> Why were you looking in her home directory? :)

<comment><USER7> Totally tangential to the issue discussed, but years ago I was doing interviews of college kids for dev jobs in a unix env. The recent graduates had had some unix in school, but not much. When asked some questions about it, one candidate let slip that he wanted to see what other people were doing so he started looking in their home dirs.

We hired him. He was absolutely fantastic.

</comment></comment></comment></comment></comment></comment><comment><USER5> The easiest way to commit yourself to leaving a job _and_ to navigate explaining yourself to the company happens to also be the way you should always be leaving jobs: by quietly interviewing for other jobs.

Find a new role somewhere else that you like and accept it. Go back to your current team and inform them that you've enjoyed your time working with them, but you can't pass up the new opportunity.

The only problem I think you have here is that you haven't started interviewing yet. So, of course you feel aimless and uncertain about your next step.

<comment><USER8> As a new engineer without a significant work history, how does the poster interview and not have the hiring company contact his current company for a reference?

<comment><USER5> By asking them not to contact his current company. This happens all the time.

I really don't understand why there's any drama here at all. _As a matter of course_ , you should have your next opportunity lined up before you inform your employer that you're thinking about leaving.

</comment></comment></comment><comment><USER9> Move on. Quick.

Three non-tech founders, after 1yr no funding, patenting in early stage ... you are wasting time.

Don't worry about the personal relationship. Just stay polite, try to reason your leave, why you have to move on and that you stay available for smaller Q&A. They will try to convince you to stay and to sell the big dream (that's their job) and maybe subtly pressure you by not liking you anymore. But that would be another reason to move on.

Or: talk to those of the three you really like and (if your want to keep on working with them) define new rules: find a new idea to pursue, demand equal equity and setup a new company/legal entity with the desired ones.

<comment><USER10> Time/money. Getting patents early on is a large waste of resources, and then really causes your path to be fixed (re: "keep trying to implement that technology in products although it doesn't really solve anything").

</comment></comment><comment><USER11> The dearest investments we make are the months and years of our lives. Make them worthwhile.

Find what is right for you, then leave to do that. Tell the founders how much you like and respect them as you go. You don't need to carry the weight of the company on your shoulders. Your departure may even help them move on to something better.

</comment><comment><USER12> A lot of commenters here have made great points and I share their sentiments. Instead of repeating their good advice ad nauseam, I'd just like to add what I think is an important point: _this is business, not personal_.

It's pretty clear that you're carrying the whole team on your back. That's just a terrible situation to be in, and one I would never accept for myself. A team of cofounders that doesn't face reality is pretty much as bad as it gets in terms of startups. Not only are you the sole voice of reason, you're also the only person doing real work and adding actual value to the company. That may not be 100% true, but I bet it's true to a first or second order approximation.

The truth of the matter (and the truth of life) is, _you_ need to look out for _your_ best interests. There is no shame in doing this. It's the right thing to do. No one else, except maybe your parents, will ever care about _your_ welfare and success. And frankly, that responsibility shouldn't fall on anybody else but you. Everyone else on this team is looking out for their own interests, why aren't you looking out for yours? Let me say out loud what you've been thinking: this is a train to nowhere. You _owe_ it to yourself to find better opportunities. Your time on this planet is incredibly precious, don't waste it serving others for a reality you don't believe in.

It seems that you know deep in your heart what's best for you, but you're afraid to do it because you're worried about damaging these relationships. As other commenters have pointed out, there are ways to bow out gracefully. Are these cofounders really the type of people who would do malice to you for leaving for legitimate reasons? If so, that reflects much more poorly on them than it does on you.

You sound like a nice guy, which is awesome. I've been a nice guy my entire life, but I've learned the valuable lesson of how to say no (tactfully, of course, but always with confidence and strength). I hope you can come around to doing the same, because it will only benefit your life in all ways.

</comment><comment><USER13> Since we're all echoing the same sentiments, I'll offer some concrete, smaller points:

 _> I wouldn't want them to tarnish my reputation as a young engineer completely new to the valley/startup world_

You can join a more established "startup", with say, 100 or so employees, and build a track record there.

As for a "reason for leaving", you can simply tell them that you just can't make ends meet anymore. Money is almost always a credible motive, and is actually more amicable than say, "your product sucks and this ship is sinking, so I'm heading to a sexier pasture".

By the way, is it just me, or is the description of the CTO seem more appropriate for a BizDev Officer rather than a Technology Officer? I'd be deeply skeptical of a founding CTO who isn't involved in the product at all at such an early stage.

</comment><comment><USER14> As a young, overly-optimistic, bright-eyed developer, I'll share a lesson that sounds obvious, but somehow sometimes isn't:

It is not my job to prop up someone else's failing business model.

It's one thing to take a lower salary in exchange for equity because you really believe there's a shot at making a return. And it's OK to take a lower salary to work on really interesting problems. But you aren't a co-founder, you're an employee. You have no professional obligations beyond your 2 weeks' notice. In this world, you've gotta fight for your wealth, health, and goals, because nobody else will do it for you.

Good luck!

</comment><comment><USER15> You probably overrate their connections, I think. People who are so unprofessional often aren't connected to the important people in the business. Think from the other people's point of view. If you are very productive and have an excelent track record, why should you care about some of the millions of people out there, who aren't?

So you are probably not losing a lot with going away, even if it's quite likely that they won't be happy with you breaking up with them.

That said, don't think too bad about them, because they are probably just inexperienced and don't know it better. And also don't think too high of yourself. If you are the only coder in an IT based start-up it doesn't matter who you are on paper. You have one of the most powerful positions. If you can't get it going it's also your fault and probably even more then it's their's, because you actually have the basic skill set to create software.

Another tip I want to give you on your way: Ask for a position as valuable as your leverage in the company. If you are the only coder in a software- or web- company you should definetely become a co-founder with a decent share of stock and decision making capabilities, maybe also CTO (C<x>O often is more of a management job the moment you get more employees, so it's not required that an engineer does that. Someone with a management or business background might be better suited, even if the <x> is a T).

</comment><comment><USER16> Three founders and one engineer that creates products?

Move on as fast as you can. Is not that you can't partner with some idea guy but three of them is too unbalanced. Doing anything takes an enormous amount of work, you can't change the idea every week(well, yes you can if you can reuse what you had already done, or if changing means less work or satisfying your customers much better, but usually you should not).

Being connected is nothing today, everybody is "connected" these days with facebook and twitter if you can't get users your product is not great. I believe that by connected you mean that they spend all time in parties "networking" while you code and they tell you how useful it is (it is not if you don't have users, they are not so well "connected").

I like (and love) a lot of people in the personal level, but some of them I will never do business with(being great at parties in some cases means that they are not serious enough for real work).

You don't need to burn bridges, but you need to be a grown up man, take decisions(decide means cutting options) and stand by it. You should be as clear as possible about the real reasons you leave and let them the opportunity to do something about it, if the reasons does not change then leave.

<comment><USER16> PD: If someone that tells you that he likes you, suddenly hates you while you tell them you take a different path than them, then they never liked you in the first place. They were just using social engineering to get what they wanted from you.

<comment><USER17> I can't vote the parent up enough. Wise, wise words. Don't let yourself be manipulated.

</comment></comment></comment><comment><USER18> Sometimes the wisdom of the crowds is a bit circumspect. Not in this case -- listen to what most everyone here is saying.

As for advice, make it a business decision. Take the emotion out of it, look at it objectively (as much as you can), then take action.

Don't be concerned with personal relationships with the "founders". They're presently benefiting from your participation much more so than you are of theirs. If they're worthy of your friendship, they will understand when you depart. If they react badly, they were never good relationships to begin with.

As for your reputation, just be productive. Startups all over the valley need productive engineers; they do not need more people pontificating about others. If you do that, your reputation will take care of itself.

</comment><comment><USER19> Not to be harsh but the reality is that the three non-technical founders are not doing their jobs. Since they are not creating the product, their jobs would be to: fund raising, marketing, sales, and biz dev. But none of those happened after a year. As a non-founder your equity portion won't be great but you are the only one building the product; I'm not sure if the salary is worth it to stay on. It's best you chalk it up as a learning experience and move on.

<comment><USER20> A thousand times this. As an engineer, you're one of the few people in the company whose work can be quantified. It sounds like the non-technical founders don't have any metrics for success that they're being held against - given the batshitness of the business, this will probably work out badly for you. Go go go.

</comment></comment><comment><USER21> This may sound counter intuitive, but you have far more to lose by staying than by moving on. In fact you face a couple significant risks that increase the longer you're there.

First, the founders may sense your lack of "enthusiasm" and realize that your chances of leaving are high. To protect the company's reputation from the public vote of no confidence implicit in your quitting, they may decide to take the initiative and fire you. Yes, this type of behavior is underhanded but it's more common than you may think. Imagine trying to explain to a hiring manager that you were fired because you planned to quit. Unfortunately, no one will believe you.

Second, you're part of a sinking ship and as the tech lead there's no way to separate your reputation from it. The longer you stay, the longer you expose your personal brand to the failure at large.

My last advice is the most important because it should guide all of your career decisions. Do not let fear suppress your better judgement. Step back from the reasons you listed for staying at the company and you'll realize that fear is the commonality. Fear isn't your friend. It will mislead you.

<comment><USER22> Good advice, less:

> _"Imagine trying to explain to a hiring manager that you were fired because > you planned to quit. Unfortunately, no one will believe you."_

If you are a decent person who can solve problems in the real world, you don't have to worry about explaining yourself to anyone. Ever.

<comment><USER23> A beautiful theory.

However, the bean counters and glad-handers who stand between you and a paycheck often ask difficult but irrelevant question, and if you don't worry about explaining yourself to them, you make it much harder to get that paycheck.

You get a lot farther with the ability to solve real-world problems _and_ MBA- appropriate skills than with just the ability to solve real-world problems, if only because there is such high demand for technically inclined people with people skills and business skills.

</comment></comment></comment><comment><USER24> I've been in almost the exact same place before, although I didn't have a community to turn to for advice. Count yourself lucky or blessed, pal. Most of the replies you've received are the kind of advice I wish I would have received at the time - with the same quantity and consistency.

Then again, I wouldn't have listened. I was so certain that I was doing the right thing by "following my passion", when I was actually being a dumbkopf. Don't be like me - don't be a dumbkopf.

1.) A CTO that can't write code in an early stage start-up is not a CTO. Period. We had a UI/UX/UXYZ "expert" that couldn't write a single line of HTML... in an early stage startup? - fail.

2.) Using personal feelings to make business decisions are a red flag. It's funny that in the same paragraph you mention that they couldn't afford new talent. This sounds like a textbook case of somebody being taken advantage of. You are new to this business, they've sold you on their idea but they can't sell the dream to other folks. Doesn't sound good, my friend. Sounds like pimping.

3.) If your leaving means death for the company, then you ARE the company and should own a LOT of the company. Or should be paid market rates. If they can't/won't pay market rates, then you should be a co-founder. And you should own a LOT of the company.

4.) There will always be more opportunities. Being the next Zuck or Google is the same thing as winning the lottery. For the rest of us (back on planet earth), it's hard work and having good business sense. There are no secrets.

Best of luck to you! Keep everyone posted on what you decide.

</comment><comment><USER25> Wow. This sounds exactly like me and my situation. Exactly a year ago at the beginning of May I began working on my first startup, after doing freelance web development for several years.

The startup was founded by 2 non-tech guys, I am employee #1 (tech guy, engineer), developing everything from the ground up. The product vision is not focused enough and is causing us to go into 100 different directions. 1 of the co-founders is a doctor and the other is a business guy with some very good connections (very similar to you).

The problem is that based on consumer feedback we're constantly changing, but we're trying to encompass EVERYTHING that EVERY tester has asked for. My personal feel is that although it's nice to know exactly everything that everyone wants, attempting to do everything is an EXTREMELY BAD IDEA. The saying "Jack of all trades, master of none" comes to mind. We can't be good at everything, so let's focus on 2 or 3 things that will have the MOST IMPACT and that we can be REALLY GOOD at to get CONSUMERS HAPPY about our product. Consumers WON'T BE HAPPY with 100 features that work HALF ASSED. This has been what I've been trying to explain for a long time now.

Over the course of the year, we've had a graphic designer who was with us for several months but couldn't handle it anymore so he left. Prior to me they had 2 other people; a programmer and a designer, and both of them have since left. The reason is clearly the lack of focus on what really matters.

The problem is that I am being paid a decent salary, and although I have some equity in the company, I feel like I don't really have much of a say (I have tried voicing my opinions but they've often gone ignored). I usually can't get a word in edge-wise anyhow even if I wanted to

<comment><USER26> Sometimes you have to look at it like this: It is a Job, It pays the bills, unless something better paying shows up, I a sticking with it. At the end of the day, money in the bank is the best way to achieve the freedom to do what you really want to do. (when ever you figure that out)

</comment></comment><comment><USER27> These people seem to focus on hitting the startup lottery and not on building a business. And that is really, really being hard on you.

Would you buy stock in a business like the one you are working in?

If the answer is no, why are you still there?

PS. If you want to talk about it, just email me. Address in on profile.

</comment><comment><USER28> Cut your losses and move on. You will only have so many opportunities to play the startup game in life... and probably many less than you anticipate.

They may be very likeable and connected but they are not performing at their job. They need to be driving growth by bringing in revenue, leads, funding, etc. as well as strengthening the business by reducing vulnerabilities (like having only 1 person that knows the technicalities of the product). If they are screwed after you leave that is more their fault than it is yours - <USER2> is a lack of management foresight.

Just be straightforward but nice with them - you won't be burning any bridges.

</comment><comment><USER29> If that CTO guy is actually as well connected as you say he is, they will not fail because of lack of technical person. They will be able to find one immediately. At least don't worry about this problem.

</comment><comment><USER30> There are a lot of great comments here already, but in the event that you'd like to chat with someone who went through EXACTLY this, feel free to shoot me and email at email@example.com :)

</comment><comment><USER31> I think it's clear that you don't need convincing that you should move on (which a lot of comments here seem to be trying to do).

Your problem as you say is you want to keep a good relationship with the founders. While others say there is no value in that because of their past performance, I think if it's not necessary to burn bridges then why do it? Who knows, they could provide a good reference for a great opportunity for you in the future.

So, my advice for you in this case (as an employer) is that:

\- Give advance notice that you are thinking of leaving. 2 months would be a good amount if you can. That should give them enough time to find a replacement. It doesn't have to be 2 months though, but the earlier the better. The worst thing you can do is keep all the frustration inside until you can't take it anymore and then have to leave right then. Rather, you should talk to them about it .. just telling them that you are thinking of leaving might be the kick in their backside to get their shit together. (But I'm not saying that is the end goal for you, the end goal is to get out with relationships intact.)

\- Just tell them that you want a change, want to try something else, find a new opportunity. They should understand that. They shouldn't expect you to give them X years of your life as if they owned you.

If you do this, then there is no cause for them to be angry at you.

<comment><USER18> > Give advance notice...2 months

As an employer, I'd love this type of notice. As an employee, I'd be short- circuiting my control of the situation.

The key to the conversation is that he is an employee, not a founder. This sounds like a situation where the employee is expected to act as a founder in _some_ situations, but back down in others. Frankly, that's a bad situation in which the employee never succeeds.

While the advance-notice advice is worthy of good people, I have serious doubts about the founders for the OP's entity. I'd personally be prepared to assume that any notion of I-am-outta-here will lead to a burned bridge.

</comment></comment><comment><USER32> A few suggestions, not necessarily mutually exclusive:

1\. Start doing what you want to do at work. Don't waste time in BS meetings, go talk to potential customers or partners yourself, build what you think is interesting/valuable.

2\. Change things up outside of work, go to lectures, meetups, start reading different blogs, whatever.

3\. Start applying for jobs and arranging informational interviews.

In all three, a big part of the point is to change things, and seeing what happens, at the very least, you'll be getting new perspectives, and after a while, you'll find that you are ready to make the big change and find another job.

This is basically what I went through over the past year. I knew I needed to leave, but couldn't quite find a way to do so. It took a while, but my last day is in two weeks. Ironically, things are looking better at work than they have in 18 months, in part because I felt free to push and try things in a way I didn't before. I'm still going though. Not exactly sure what I'm going to do in the long run, but I'm much more comfortable with my ability to make a reasonable living as a result of changing my perspective.

</comment><comment><USER33> It is important to be objective about your own career and not be emotional about your friendship with them. If they are good at heart, they will understand you eventually. If not, you are wasting your time anyway. You want to be loyal to folks, but this is a situation where you have to be loyal to yourself as well.

This is part of the learning curve we all go through and it seems you have learnt some important lessons already. I have a lot of senior friends that I didn't get along so well with professionally (because of our different styles of working) but on the personal level we still meet for lunch although we don't even work at the same company any longer.

It's ok... if I were you I'd go find another job and then just tell these guys that an excellent opportunity has come by. Perhaps give them a 4 week notice instead of the regular 2 weeks so they can find someone. I don't think you owe them much more than that.

</comment><comment><USER34> I was in a similar situation two years ago. There is no one to blame but our lack of experience. We did the same thing: no growth? let's code up some random new feature (which makes you feel like you are actually doing something, but you aren't). I also don't think we made a great duo, but I'm still friends with my co-founder and we both agree we were just wasting time and it was best to leave (yours will realize that soon enough).

My advice: leave. Yes, you will wonder about the "what-ifs", but you have a bright future ahead. For example, I started a new company a few months ago with a friend, and we have already grown way more in a few months than my last company did in two years, and we are growing month after month (despite $0 in funding and two YC rejections :)).

You don't need investors. Maybe find a job, try some ideas on the side, and charge for them. You might be surprised what you are capable of.

</comment><comment><USER35> Just be honest with them. You don't have a shot at solving any of these problems unless you tell them what's wrong. This stuck out:

'During meetings, I always feel like a killjoy by attempting to be realistic and focused and reserved about the brand new idea they come up with every other week and that I need to get started on right when the meeting ends.'

I have a non-technical co-founder who does the same thing. If they don't even bother to become the slightest bit technical (which would help them understand how writing software works, and how long it actually takes) then they aren't co-founding material. You need to be firm with them. "No, we need to remain focused on building up the feature set we already have, and making it perfect. All the bugs in the existing code need to be fixed before we start adding features."

</comment><comment><USER36> _During meetings, I always feel like a killjoy by attempting to be realistic ... about the brand new idea they come up with every other week and that I need to get started on right when the meeting ends._

I tire from that very thing, very quickly. I've worked with too many "idea" guys that always want to see 10 ideas started, vs. 1 completed and executed really well. Maybe they're trying to find that 1 great idea by trying out many, but a lot of times I see startups start one thing without finishing another. In the end, after XYZ time frame, the company really doesn't have 1 solid feature to show for it, only multiple half ass ones.

What's worse, at least from what I've experienced, is that a lot of those ideas or features are secondary, or tertiary, with regard to what the core product should really support.

</comment><comment><USER37> Start cultivating offers now. If your current pay checks are still clearing you don't have to move in great haste. If you get an attractive offer: be as professional as you can but move on; offer to work hourly, if you can muster it, and on board new employees / contractors. Give as much notice as you think is prudent considering your new employers. If you were still enthused my advice would be different; I've spent enough time in start-ups without direction to know how frustrating and exhausting it can be. Don't languish for the sake of a broken organisation, find a healthy one and move on. I sympathise with caring about the welfare of your current employers but you can't do their job and yours at the same time.

</comment><comment><USER38> As you look to what's next, don't forget to look at what patterns you may have that are contributing to the environment so you don't repeat them.

The line that jumped out at me was the "killjoy" one. You may be the only voice of reason in the room, or collectively you may all be trying to solve essential issues. Measure the new ideas against the goals of your company, and then help prioritize. Make sure you understand the goal and intent, make sure they understand the cost of pursuing (the stuff that gets abandoned or pushed down) and then make the right move going forward.

I think this will help you in the current situation as well as your new one if you decide to move on.

</comment><comment><USER39> Find a new place. And either move on, or try renegotiating your position at your current company. This post might help: <http://news.ycombinator.com/item?id=2949323>

</comment><comment><USER23> I have two experiences here that may be relevant.

Some years ago I was in a comparable position, only I was working full-time at a salaried job when I was approached to be a partner in a new startup. The elevator pitch and cocktail-napkin numbers were engaging, and it looked like we could bootstrap it with resources we already had on hand and be profitable within a year.

Except that six months in, we had no business plan. Now, I am not an MBA type, and I think that the value of the business plan is more that it's a self- check: if you say "Based on our projections, we should have 100,000 users and be realizing $10,000 a month in subscription fees and ad revenues by December 2012," and in December you have 35 users you know something is wrong; and if in December you see $1.2 million in revenues then you know you're doing something right and you'd better start doing more of it quickly.

Without a business plan on paper, we had no way of gauging even that the founders were on the same page as to what "success" meant, let alone whether we were succeeding or not. After six months of asking for this, I said, "I can't work a second full-time job on spec, and my business questions are not being taken seriously because I'm just the guy who knows web servers and streaming video." And I walked.

You might try an approach like that: pick up a basic business textbook and ask questions. When do they expect to see revenues? Do they have an exit strategy where they make themselves attractive to a large company and get bought for kerjillions of dollars? Do they have a non-exit strategy where they bootstrap themselves to profitability? If they can't answer that question, get out before the paychecks start bouncing.

My other experience was with a startup. It was five non-technical people - three who had lots of experience in the problem domain, one who had experience in business development, and one who had experience in data processing software development for insurance companies and bill collectors. And the goal of the startup was to put a certain experience online. The three experts in the problem domain were full of (and I say this without irony) excellent ideas as to what the software should do.

The principal structural problem that we ran into over and over again is that the only partner (and thus the only voice that was taken seriously) who had any experience in software development came from a domain where the business analysts would issue a mostly-clear set of rules and it was the job of the programmers to turn that into COBOL. So their first approach was to hire a consulting company to build the product for them. That was an almost completely unmitigated disaster: the only real benefit was that it let them get a product off the ground and start realizing some revenue. This was offset by the fast realization that the consulting company was milking them for all they were worth because the consulting company didn't expect them to last, which then led to a very acrimonious parting of the ways followed by lawsuits. And then they hired their own developers.

So the pattern we fell into, which you will probably find strangely familiar, was that the five partners would gather in the conference room once a month and come out with with two or three good solid ideas. They would then instruct the developers (two coders, a web designer, and a database analyst) to make it happen. We would start on it, hampered by the horrendous infrastructure that the consultants had left (but there was no time to address technical debt). We would get maybe halfway through implementing one of the ideas, while putting out fires and serving as tier 3 tech support, and then the next monthly meeting would happen.

That was the job where I learned to give development estimates in person-days on task, rather than in calendar days, and where I picked up the habit of automatically appending "assuming you don't change the requirements in the interim, because that will make it take longer" to estimates.

So what happened there? Well, I was the first developer to leave. Within a year, all of the developers had left, the partner in charge of software development had also left (no doubt with a massive golden handshake for her efforts) and the company had been folded into one of the CEO-partner's other companies, possibly with the recognition that it would never be fully profitable.

Based on my experience: if there is no technical person competent in the development style you're working in among the partners, if the only technical people are employees rather than partners, stay away. There may be exceptions, but generally partners have a lot more credibility with other partners than employees do, and if you as an employee are saying "this will take X person- days to implement and will not be profitable" and a partner is saying "this will be trivial to implement and I read in Infoworld about a company that did this and made ten billion dollars a day!" then the partner will be believed and you will not. No matter how many times you are right and that partner (and Infoworld) are wrong.

Summary of the summary: no technical partner means you shouldn't have signed on in the first place; no path to profitability and no exit strategy means you should get out while you can.

</comment><comment><USER40> The thing they will (should) appreciate the most, and the thing that will keep the bridge most intact after leaving, is to be generous in the advancement of your notice. This honors the trust they put in you as an employee with significant responsibilities by affording them the valuable time to absorb the impact to their company in a managed way. Since two weeks is customary, something on the order of 4 weeks would be in good faith of the trust between you.

Some might say by giving extra notice you risk "showing your hand" and being fired prematurely. However, if you have a good personal relationship, this is unlikely to happen.

</comment><comment><USER41> The CTO is non-technical? How does that work?

<comment><USER37> Judging by the details of the post I'd say it does not.

</comment></comment><comment><USER42> Why don't you have any users? One thing you must always do in startup land is focus on the users of your company.

IF you truly have none, well. No great loss if you bail.

But if you could have more, just haven't actually focused on the user sufficiently well to have a fair few of them, then I suggest you: Focus On The User.

Startup-dilemna can be overwhelming, especially when its as catastrophic as your situation sounds, but that is why it is good indeed to have a few faithful rules to guide yourself by. If you're a tech guy, you love what you're doing, really, then you must have happy users somewhere.

Or?

</comment><comment><USER43> If you get a competitive pay, try to hang on more and see if you can turn around the company. Tell the founders about your concerns and see if they will let you get added as a co-founder (so that you benefit when the company finally turns around).

However, if you get a lot lower pay than what you get in a bigco, you need to talk frank with your founders. More than the revenue and lack of funding, it is the Zero active users that concerns me. Momentum is the key in a startup and you guys seem to have lost it. When you are in a hole, stop digging.

</comment><comment><USER44> I've been in the same position myself (college -> startup) and without reading the other comments I give you two questions to think about:

1\. Are you making good progress on a personal level? (meaning learning the things you want to learn at a good pace.)

2\. Does it have a negative impact on your financials?

I kept going until I was 15k € in debt and the startup was closed down. I don't regret it because I learnt so much. It took me less than 6 months to pay back my debt and I'm glad I didn't quit when things looked bad.

</comment><comment><USER45> > "and if I leave, the company will probably die off as I'm the only one > writing code and making products exist"

Are you certain that the founders share the same sentiment? If you don't personally believe in the vision of the startup/idea then just leave. Don't stay there to be the guy that just writes code. They can get anyone to write the code. To make it easier on you: be a little selfish here (its okay!). Its a business, not social work.

</comment><comment><USER46> Almost every startup has gloomy periods, and often more than one. The patent is a really bad signal IMHO (I did this once). It's great that you value your relationship, and you should try to keep it that way if you can. They will need some help transitioning you out of the company, and so you should give them more than the usual 2 weeks notice IMHO. I gave 3 months notice once. Best of luck

</comment><comment><USER47> Maintaining the good graces and friendship with the founders and moving on aren't mutually exclusive. They're not stupid, just level with them: the traction achieved isn't what you aspired to and you want to work on something else. Be assured that they respect the technical contributions you've made, if they can't respect your aspirations than their good graces aren't worth worrying about.

</comment><comment><USER48> After one year you have zero active users and only $100 revenue. You have a "well connected cto" but disconnected from reality? Surely this tells you everything you need to know?

You guys need a serious evaluation of the business and make a decision to fix things or shut it down. A year suggests you have missed the obvious questions about your customers.

If you are the only one with these thoughts may be time to move on.

</comment><comment><USER49> I have been in similar situations with very distracted CEO's who just thought of everyones input as opinions, or content to digest. Big problem, but solvable if you get another engineer to help make cases with you and help mentor (without explicitly stating that as a goal of course) the other founders a bit on how to run a tech startup, as opposed to a marketing effort.

You can get another engineer!

</comment><comment><USER50> Haven't you answered your own question?

~ No users ~ No revenue ~ No investment ~ No developer founders

Sounds like you know what to do, but you're still in a state of denial.

<comment><USER51> Because he's employee #1. I bet he's thinking there's some great way to come out on top, like "Tell them that you now require 40% equity to continue, 55% of voting rights, immediate cliff, and that if this is more than they can do you must now pursue other options". Well, sorry, there's nothing like that that you can do and 'come out on top.' Just cut your losses. :(

<comment><USER52> 40% of nothing is nothing.

</comment></comment></comment><comment><USER53> Get out, waste of time. They would be well connected if they knew how to use their network. Apparently they don't, because none of their connections was good for business. As few put in the comments, don't take the entire weight of the business on your shoulders. You're probably in your twenties, the most fruitful and effective time of your life. Don't waste it.

</comment><comment><USER43> Out of curiosity, what do those 3 founders really do? If they don't develop products or sell the products or get the funding they have no business to be sitting as founders. Many non-technical founders have the weird notion that ideas matter a lot. However, unless you develop & sell them - the ideas are worth zero. So, their contribution is effectively 0.

</comment><comment><USER54> Many have said it already, but you need to move on. You are wasting your precious time there. Don't worry too much about any tarnish; that doesn't even work for politicians and high spec founders (Groupon).

(I do find it weird you have a non technical CTO; industry veteran or not, his CTO badge is only a placeholder which is not good for a tech product company IMHO)

</comment><comment><USER55> At least you have one year experience. That's making your position stronger. Do they pay you a salary which helps you pay the bills. If so, Stay. Try to bring new idea's to change their looks on the product. The Startup way is not the easiest way but be creative and create somethng it works, solve problems. (djfashion777 ad gmail dot com)

</comment><comment><USER56> It's appreciable that you have this loyalty towards the founders. However your first loyalty is to yourself and to your interests.

Communicate with them, tell them why you think things aren't working, and propose ways the startup can make improvements.

If you encounter too much inertia and you know things aren't going to get better, find yourself something better to do.

</comment><comment><USER57> I sounds like you're the one with the most to lose, and on top of that a none technical CTO?! you sound like you should be the CTO as you're the one developing.

My opinion you should move on, end of the day it's your life you shouldn't waste it with unfocused individuals friends or otherwise, they're probably treating the star-up as a hobby.

</comment><comment><USER58> From what you say, I don't think that you communicated all that you've said to your bosses. If what you say are facts and not your opinions, I think that you should go to see them and tell them what you think, what you want. It's okay to be involved with people at work, it's not okay to use this as an excuse.

<comment><USER58> Good luck

</comment></comment><comment><USER59> I was in a similar situation in a 2-person startup. My advice, GTFO ASAP. YOu'll find more opportunities, your reputation will be fine. You have now just wasted one irretrievable year of your life. Time is the most valuable commodity which you can NEVEER get back. Don't waste anymore. GTFO now

</comment><comment><USER60> I'd say go before it's too late. Being there, done that. After 3 years I realized that the founders wouldn't change their M.O. And that was after writing 3 products, developing the team, deploying the thing. There are plenty of good start-ups to work. Take that lesson as lesson learned and move on.

</comment><comment><USER61> If you are in a team where you are the only person in charge of the software, right from the design->implementation->final shipping of the product, you need to have complete & utter faith on the people who came up with the idea in the first place. And also use a bit of common sense from your side and ask yourself why you think this product will work in the market?. You are going to spend countless hours away from family, slogging on developing a state-of-the- art product which's going to be discarded in a couple of months/years time. Not a good way of investing precious time, which might have well been spent in academia.

I empathize with your situation.Long ago, I too, was stuck in a similar environment. The concept maker was undoubtedly brilliant but when it came to the software specs, he was at a complete loss. I was the only one in charge of development work. But gradually the product design changed and I kept on modifying my project every other day- changed the tools, changed the OS, shifted through multiple languages and finally setup my environment which worked well. By that time, I was half nuts. I struggled to get my work completed in time due to many technical issues, frequent changes in the original concept, and primarily because of lack of practicality of the project. I lost faith , I realized it was just going to be a test project and will be discarded in a couple of months time when they start working on the next long-term project. For them this was a low-priority project, but for me, it was everything and the only thing that mattered at that time. So I thought what the heck, I stayed put and tried to get as much work done as possible, worked like a dog, but my end product was not as impressive as they had imagined it to be. I didn't want to leave them, I loved my entire team and they are nice people. So, I continued being nice & tried to help them as much as I could. You know what, at the end, the entire project was scraped and forgotten as I expected and now they are focusing on a much bigger, profitable & 'practical' project. Guess who was blamed in the end and who got away?

If you want to help someone, they will never refuse. Being nice is easy, trust me. You want to be the nicest guy in the startup world, be the superhero in charge of saving your company from an predictable doom and maintain true friendship, I understand. But choose to continue what you are doing only if, you feel you cannot be more useful anywhere else in the world. God forbid, but suppose things go seriously wrong in your company tomorrow, the business people might put the blame on you, since you are the sole implementer.You mentioned that all of you are close friends..., but if they were in your shoes instead, what would they have done by now?

The toughest part is saying 'No'. It's painful for you, especially if your friends are on the receiving end of your rejection, but you need to do the right thing and save everyone's time including yours. Move on and help your friends move on too. Find another project or start a different company with your friends. Or if you have an alternate idea in mind, discuss the concept with them, don't just be a code monkey.

</comment><comment><USER62> With revenue you mean, after substracting your salaries or plain revenue like in "money getting in"? If in one year this only made 100$... Move on, fast. My (very) small blog makes more in a year, with far less work.

<comment><USER63> To even have a chance at Ramen profitability, you need a couple of grand a month.

With three non-tech cofounders... hmmm, get out, tastefully.

</comment></comment><comment><USER64> Be honest. Tell them about your thoughts and conclusion (that this is not sustainable), there is a fair chance this will resolve your predicament _and_ strengthen your relationship.

</comment><comment><USER65> I'll be terse. You're 100% wasting your time. Leave yesterday.

</comment><comment><USER66> If the opposite were to happen: if they were unhappy with your performance, they would fire you and you would agree that it was the right thing to do. Quit.

</comment><comment><USER67> If none of them is technical then why aren't you the CTO?

</comment><comment><USER26> If you feel bad about leaving, try to find a good replacement/contractor for your role, that way you won't leave them "high & dry".

</comment><comment><USER68> Been there. Done that. Except I was stupid and wasted 6yrs of my life.

You woke up in a year. So get the hell out.

</comment><comment><USER69> Three non-technical founders and one of them is the "CTO"?

What could possibly go wrong?

</comment><comment><USER70> I am not the first and probably won't be the last to say: you should probably leave. Find another job, and leave this one.

What does "well connected" mean? If they were _really_ well-connected, you'd probably have funding... and VCs with an active interest in getting users for the product. Well-connected means that VCs who don't fund you will mentor you until you are fundable. It means that you can get TechCrunch coverage with a phone call. That's what "well connected" means.

Too many people sell themselves as being "well connected" when they aren't. 99.9 percent of us (and 99.99 percent of the smart ones) are peasant people who don't have that kind of access that would merit having a non-technical founder.

There is an alternate strategy to the "leave now" advice that you are getting. I'm going to explore it just for the sake of doing so, although the default advice of "quit now" stands. _If_ these founders are well-connected, they can prove it. Ask to go to investor meetings and the various other high-society shindigs they attend to keep up their connections. They might as well, because it sounds like they're not paying you. If they do so, then you can evaluate for yourself whether they're well-connected enough to merit staying in this long-shot startup (and you can make connections yourself). Sitting in on the investor meetings will also give you a voice in technical decisions because you'll have your own perspective on the business needs.

Chances are, they'll say no. It's very unlikely that these "well connected" "idea guys" will let a lowly JAP (JAP = Just A Programmer) in his early 20s sit in on investor meetings. This refusal will make it clear to you how little this personal affinity/loyalty you feel toward them actually means... not much, on their end. If this happens, then you should leave without reservation or any feeling of guilt.

<comment><USER25> It's funny that you mention "well connected idea guys" not letting a programmer sit in on investor meetings. I actually surprisingly was invited to the last investor meeting that the startup that I work for was involved in. All 3 of us sat there, and I have a feeling the reason why I was invited is because I'm the stereotypical "programmer" in how I dress, I have a slight beard, sort of unkempt. My guess is that they figure the chances of getting funded are better with me there, than with me not there.

The investor kindly pointed out some very important facts about how our registration process and our product that I had very much agreed with him on and had voiced these concerns and opinions PRIOR to the meeting and they were ignored. The registration process on our site takes about 3-4 minutes before a user can get into the app, and I had been saying all along that no user in their right mind is going to wait that long, the investor 100% was on the ball with this one, the product guy did not agree, based on our tester feedback this supposedly wasn't an issue (all testers are in some way connected to the co-founders though, relatives + friends). When was the last time the user knew what they wanted though? Sometimes you need to know what's best for your users and making them wait 4 minutes for a product when they're not sure what it does, is definitely a lesson in futility. Me being involved in web development since I was in middle school, I knew 100% the investor was going to bring that up and I'm glad he did, but we've still continued to ignore that sentiment which I believe is a mistake

</comment></comment><comment><USER71> Perhaps your decision to leave will be easier if you realize that if _they_ needed to let _you_ go, for whatever reason, they'd do it in a heartbeat. Not out of malice, and perhaps not without regret, but as a rational business decision.

<comment><USER72> Exactly - the OP needs to sit down and evaluate this as a _business_ decision.

</comment></comment><comment><USER73> You may like them, and they may be the nicest people on earth but that will not make you happy at work, make you successful or provide for your children.

You _may_ want to try to bring some common sense in as a last try, but a year and no users or revenue is a major warning.

Out of 4 people only one can code...not a good thing, at all.

</comment><comment><USER74> If it were 2004 maybe this would require some thought. In 2012 it requires none at all. Start putting out some feelers for jobs. Take some interviews. When you've got an offer that looks more promising, give them an amount of notice that shows you care about them and cut your losses. Offer to help with the transition to contractors or whatever they want to do next.

You'll be able to save the relationships if you remain professional and polite and give them adequate notice.

It wont be 2012 forever. Demand for people with your skills is insane right now - don't waste your time. Get moving.

And next time you agree to be a technical co-founder (which is what you are here), be sure you team up with people who give you an equal say in the decision making process - not people who view you as an order taker.

<comment><USER25> ->And next time you agree to be a technical co-founder (which is what you are here), be sure you team up with people who give you an equal say in the decision making process - not people who view you as an order taker.

Well put.

</comment></comment><comment><USER75> I have already been once where you are today. My simple suggestion would be to leave on a good note and go pursue something better. There are many more guys who are looking to join a startup and I am sure your bosses will get hold of someone else. Given the fact that your company does not actually server any active customer, 1 month of No-Development would not be of much harm to the company owners.

</comment><comment><USER76> It looks like you need a clear plan, and stick with it. Weekly meetings are not there to change the plan, they are there to make minor adjustments, resolve the roadblocks and discuss progress and strategies.

If you believe in your main idea, you should start with making minimum viable product and see if your idea actually works. Funding is optional, unless your website requires something special that needs money.</comment>


Crypto options trading startup Sparrow banks $3.5m - <AUTHOR> https://www.techinasia.com/sparrow-3m-bitmex <comment><USER2> What's the monetization strategy here? Related portfolio products, or a centralized GUI, or a fee baked into the contract code? Curious why a company like this is valued so highly for such early stage.</comment>


Poosh All - Your Social Media Dashboard - <AUTHOR> http://pooshall.com

<comment><USER2> The problem I have with these aggregators is, twitter != facebook for me. So, I will not use these. Yet.</comment>


Ask HN: What do you think about Zoltan Istavan, transhumanist/politician - <AUTHOR> <comment><AUTHOR> I am a cheerleader for transhumanism. But it comes in many colours and in the community, we are not all always on the same page as to what it means..

He is planning on running for office on transhumanist platform. Last time, he wanted to lease all national parks and public lands to industry. I stopped reading him after that. He hasn't mentioned it this time around.

Here are some snippets from his Facebook page:

[..] Friends and adversaries of mine keep telling me the poor pay more in US taxes than the rich. This is totally untrue. In dollar terms, the rich and moderately rich are carrying this nation on their backs (just look at any Gov stat). The top 25% foot the tax bill for a large part of the service Gov provides to you. The amount the poor and bottom 75% of Americans would not be able to keep government, social services, and this nation running. We shouldn't forget this. When comparing tax rates, we must always remember tax percentage terms are different than dollar amounts. Dollar amounts are what matter and make the world go around--what buys you food, puts gas in your car, and allows you to buy Christmas presents for your family. Tax percentages don't do that--only actual dollars do. Over time, I endorse getting rid of the IRS and replacing Government with technology and automation. The result would be far lower taxes, if any. If I was to get into office soon, I'd cut nearly all taxes and implement a single national sales taxes to help us get to a taxless world where robots and automation run the Gov. Then no one could get percentages and dollar amounts mixed up because we all pay the same percentage. In the meantime, be grateful that the rich (both Democrats and Republicans) pay so many dollars to Uncle Sam. And stop creating this nonsense that the poor pay more in taxes than the rich. They pay far less in actual dollar terms, which is the thing the makes world go round. #UpgradingAmerica #Zoltan2020[..]

[..] As President, I'd cut the military, cut foreign aid, and bring home many of our troops that are abroad. We have so many issues at home that need first priority: poverty, homelessness, education, health care, Basic Income, etc. If the potential of an Iran war bothers you, make noise. It's time to spend Government resources on Americans, and not on foreign fights in far off lands. Remember, I've been to many of these endless conflict places as a journalist for National Geographic. It never ends well. It's best to try to make peace.[...]

[..] One of the most unpopular opinions I have is that I believe 4-year college should be mandatory in the US. (First, let me say, I would make public college free, and I plan to pay for this by saving money by emptying prisons of nonviolent drug offenders and others wastefullly imprisoned). To me, college is much more than education; it's something that puts the finishing touches on youth and prepares them to be smart, open-minded, and responsible citizens. I do not agree that people at 18 are adults. I think it's much closer to age 23-25 that kids become mature enough to be a so-called "adult," given brain growth, social development, psychology, etc. I think many 18 years old are irresponsible, impetuous, illogical, and plain dumb. And they need more life and scholastic experience to become the best they can be. Joining an inner city gang, being a baggage handler at airlines in a union, or working on the floor at Walmart, or doing other simple and mindless tasks is not what people should be doing at age 18. A college educated person will demand more from themselves, and from their peers, and from their kids. A college educated person's sense of logic and brain skills are dramatically improved by 4 extra years of education and life experience with sex, drugs, and rock-n-roll, to use the proverbial experience of college. Furthermore, in the age of expanding lifespans, it's also important to educate our youth more. Laws of mandatory high school were passed in the 1960s, when lifespans were about 63 on average. They're near 80 now, and soon new transhumanism sciences like genetic editing will take them above 100 and further. BUT mostly, without 4 extra years of college and brain development, too many Americans end up unsuccessful and relying partially on government support. It's a well known fact proven again and again that the college educated widley outdo the uneducated in overall prosperty, length of marriages, happniess, staying out of jail, etc. It's makes good sense to ask all our American youth to go to college. (I would make some minor exceptions to this mandatory rule, such as professional athletes, military recruits, nonprofit apprentiships, start-up careers, etc.) But the majority of Americans age 18 would go to college. That is something that would forever change America for the better, and give our nation a leg up on other countries. In the age when robots will also start taking over so many menial jobs, it's also a good thing. Remember, going to college is not about choosing a career making money, it's about becoming as smart and accomplished of an individual as you can become to prepare you for whatever life will throw at you. I think every American deserves that preparation. I think every American youth deserves a nation that wants them to become as successful as possible. #UpgradingAmerica #Zoltan2020[..]

[..] To me, my ideas seem logicial, but they're always taken as controversial. And that's constantly getting me in trouble on the campaign trail. I talk about helping disabled people with technology and get called an ableist. I think parents that can't feed their children shouldn't be allowed to have them and I get called an authoritarian. I think we should aim to overcome all disease and death with science and I get called a tool of the devil or the Antichrist. It's just astounding to me how illogical so many people are--both liberals and conservatives. If you're sick of all the BS, lies, and irrationality, join me in standing up for what's reasonable and right. #UpgradingAmerica #Zoltan2020[..]</comment>


Social Media Sites Denied to UK Asylum Detainees - <AUTHOR> http://www.refugeeradio.org.uk/ivo.html

<comment><USER2> How dare those people who came to our country in the hope of sanctuary from persecution, have the audacity, that when the justice system fails them, to turn to other means, such as raising awareness of their plight....

Honestly its as though they were expecting a fair and just society that was meant to represent a paragon of human rights and justice...

I guess they don't know about pandering tories who try to placate the casual and everyday racist attitudes found among their base. I guess the stories they told themselves of British hope and justice missed out the part where their lives would be pawns in a political fight.</comment>


GNU Scientific Library 2.0 - <AUTHOR> http://lists.gnu.org/archive/html/info-gnu/2015-10/msg00014.html <comment><USER2>
        It has been reported to compile on the following other platforms,

        SunOS 4.1.3 & Solaris 2.x (Sparc)
        Alpha GNU/Linux, gcc
        HP-UX 9/10/11, PA-RISC, gcc/cc
        IRIX 6.5, gcc
        m68k NeXTSTEP, gcc
        Compaq Alpha Tru64 Unix, gcc
        FreeBSD, OpenBSD & NetBSD, gcc
        Cygwin
        Apple Darwin 5.4
        Hitachi SR8000 Super Technical Server, cc

I love that they are still doing this. Nothing shakes out numerical bugs like testing on different hardware designs. Would have been good to run the test suite with ICC and Clang too tho', to be sure.

PS I also love that Hitachi have a product called the "Super Technical Server" :-)

<comment><USER3> Ordinarily, I'd insert a comment here on how much I miss my old NeXTCube, SparcStation, Apollo, AlphaStation, or Indy...

But the fact is I really, really don't. We are so spoiled now. Spinning up an AWS gpu cluster in 60 seconds from the beach beats spending a day and a half just to upgrade a video card ;)

<comment><USER2> Living in a monoculture requires an understanding of local maxima that I think hasn't been well thought through. So much innovation came from all those competing hardware designs and OSs.

<comment><USER4> This optimization problem you're conceptualizing is a very strange one indeed. It's like the only outcome we care about is achieving some perfect architecture.

In a dynamic optimization problem, where we have to take into account the current state of the world, and our ignorance of the future, sometimes the most efficient use decision is going with what we have, since it's good enough.

I'll put this another way: I don't think there's some terrible shortage of fundamental computer science research out there, nor is there a shortage of competing architectures.

One more spin on this. The fact that we have fewer competing architectures than we used to is itself a sign that existing architectures are pretty good. First, they are the survivors, and have out-competed the rest. Second, more importantly, if less research is being done to develop competing platforms, that means researchers are less optimistic about their ability to improve on what we currently have.

</comment></comment></comment></comment><comment><USER5> It's nice to see that someone took the torch from Brian Gough. The GSL is one of the best general-purpose free scientific computing packages out there.

</comment><comment><USER3> Any HPC people would care to enlighten us ignoramuses on how the different frameworks for scientific computing stack up: matlab, octave, mathematica, gsl, nag, etc... Or is everyone just defaulting to Python and R now ;)

<comment><USER6> GSL is closer to something like BLAS or LAPACK[1] -- it's a library that provides tested/reliable/optimized implementations of commonly used functions in scientific computing. The other software you listed is more user facing-- and commonly provides wrappers around libraries like GSL. For instance, MATLAB relies heavily on BLAS & LAPACK, as does numpy; I'm less familiar with whether GSL is called from any well known packages other than Octave, but there are definitely bindings for Python (and maybe R? I don't write any R though)

[1] Respectively, "Basic Linear Algebra Subsystem" and "Linear Algebra PACKage"

<comment><USER7> > GSL is called from any well known packages other than Octave

I see GSL used a lot actually. Mostly as a component of big scientific projects, but it's not as high-profile because it tends to be in a similar position to stuff like BLAS - really common but not something many people deal with directly.

</comment></comment></comment><comment><USER8> One thing that has ALWAYS impressed me about Gnu libraries is their extensive documentation.

gsl is no exception, it's manual can be found here:

[https://www.gnu.org/software/gsl/manual/html_node/](https://www.gnu.org/software/gsl/manual/html_node/)

An aside: is gsl why Gnu Calc is so darned accurate?

</comment><comment><USER9> The Gnu Public License forbids redistribution unless what you distribute is also GPL. It means I can't use this in anything I share on behalf of scientific groups that want to use Open Source. I've run into this a few times, and it's rough when GSL is so useful.

<comment><USER5> You don't have to distribute your own stuff under the terms of the GPL. Any other GPL-compatible license will work. Most open source licenses are GPL- compatible, so you should have no problem.

Of course, like you say, this only matters if you want to redistribute. For in-house use, everything's allowed.

<comment><USER10> Furthermore, unless you're distributing binaries with the GSL compiled in, you can use any license you want for your own code. The things you wrote, you wrote. You can distribute those things however you like.

Six months ago, I , like OP, was very confused and concerned about this same issue. One of several discussions that helped me sort it out: [https://news.ycombinator.com/item?id=9477840](https://news.ycombinator.com/item?id=9477840)

</comment></comment></comment><comment><USER11> Didn't even know this existed. Thanks for highlighting it!</comment>


The V-22 Osprey-Inspired Army Aircraft Is Ready for Takeoff - <AUTHOR> https://www.wired.com/story/bell-v280-valor-tiltrotor-test/ <comment><USER2> Note that despite the optimistic sounding headline this is a single prototype undergoing static testing on the ground. It still has to make it through the selection and procurement process. Said process is going to be colored no doubt by the high cost and troubled development of the V-22.

</comment><comment><USER3> I wish they explained how they were doing tilt rotor with stationary engines. That must be one hell of a gearbox that can transfer horsepower to a shaft with a 90 degree range of motion.

<comment><USER4> I don't see the problem. If the axis of rotation is along the drive shaft (which is already spinning at hundreds of RPM), there's no extra gearing required at all.</comment></comment>


Difficulties Everywhere: Can Kierkegaard tell us how to live? - <AUTHOR> https://harpers.org/archive/2020/05/difficulties-everywhere-soren-kierkegaard-philosopher-of-the-heart-clare-carlisle/ <comment><USER2> It might seem odd but I had a profound philosophical awakening playing Nier: Automata. You 'experience' Kierkegaard's philosophy in the game along with other philosophies which could be spoilers if anyone decides to play it.

I almost didn't play the game, I passed on it a few times until SkillUp (a YouTuber I respect) did a video on it entitled "The Masterpiece You (Probably) Won't Play" ([https://youtu.be/-NiyfG8Ctbo](https://youtu.be/-NiyfG8Ctbo)).

If you aren't going to play the game, and I recommend you try it, Wisecrack did a really good philosophical analysis of the game here: [https://youtu.be/UiOTSKBy6ME](https://youtu.be/UiOTSKBy6ME) and here: [https://youtu.be/LCcednqOLwQ](https://youtu.be/LCcednqOLwQ)

</comment><comment><USER3> Rendering is fucked up on this page and Reader Mode doesn't automatically engage. Explicitly do the "about:reader?url=" trick to fix it.

The author's got a bad misstep in the first paragraph; Socrates, if he existed, was skilled, landed, honored in military service, and his "poverty" was part of his apology when he was sentenced to death. This matters deeply because there is _another_ important Greek philosopher who, if he existed, lived a much more impoverished and simple life, namely Diogenes [0]. This contrast between Socrates and Diogenes is worth carrying into the rest of the piece.

Kierkegaard was Christian, and living in an era where Christian foundational beliefs were considered scientifically supported. As a result, his philosophy cannot escape the Christian mindset. While the author name-drops existentialists, folks like Camus and Nietzsche, they don't seem to grok that existentialism aggressively rejected the same trappings of society to which Kierkegaard felt encircled and trapped, particularly the religious trappings to which Kierkegaard felt such obligation and wonder.

At least Kierkegaard was right to criticize Hegelian dialectic as "nonsense". Plain language philosophy [1] is so much simpler, although it wasn't ready yet in Kierkegaard's time.

The author uncritically accepts Kierkegaard's view that Christian myths much be accepted as paradoxical or absurd yet true. When countervailing evidence disproves each myth, we are not merely being fervent or zealous if we hold on to those stories, but actively denying reason and empiricism.

The author concludes by suggesting that we look inward to an intuitive religious or spiritual path, and ignore the distractions of society. Further, they insist that the philsophical truths revealed here or there by Kierkegaard or his biographers are ageless and that the "peculiar challenges of our moment" are not "the meaning of our lives". That is high-minded, but simply not true. A lot of folks will think of COVID-19, but I think of secularism and the decline of the Church's ability to control minds.

[0] [https://en.wikipedia.org/wiki/Diogenes](https://en.wikipedia.org/wiki/Diogenes)

[1] [https://en.wikipedia.org/wiki/Ordinary_language_philosophy](https://en.wikipedia.org/wiki/Ordinary_language_philosophy)

<comment><USER4> I'm curious about the evidence that disproves each myth.

<comment><USER3> [https://en.wikipedia.org/wiki/Historicity_of_the_Bible](https://en.wikipedia.org/wiki/Historicity_of_the_Bible) is a good community-sourced overview.

</comment></comment></comment><comment><USER5> See also the recent post on Aristotle's Nicomachean Ethics:

* [https://news.ycombinator.com/item?id=22965049](https://news.ycombinator.com/item?id=22965049)

Is it Philosophy Day on HN or something? :)

</comment><comment><USER6> If you want to know how to live, start with the stoics. They answered this question VERY successfully thousands of years ago.

<comment><USER7> If you already have all the answers, Kierkegaard would definitely be of little interest for you.

</comment></comment><comment><USER8> I think the internet has kind of inoculated us to such philosophies. There are so many people online who are depressed and try to channel it into insightful writing. In the end, these insights turn out useless: life just isn't a very deep thing. He should've married Regine and got on with it.

<comment><USER9> the implication that internet edgelords of any flavor are holding a candle to or diminishing Kierkegaard in any way is pretty disgusting tbh.

and "insights turn out useless: life just isn't a very deep thing" is incredibly trite. i don't mean this to come across as a personal attack, but dismissing K's project out of hand and then making a pithy reference to his biography in what i suppose is an attempt to signal knowledge (or worse yet, understanding) of the matter at hand is just incredibly weak.

<comment><USER10> Wow, so what does it look like when you _are_ attacking someone personally?

<comment><USER11> That is not a personal attack. You have someone effectively dismissing a philosophers work using something that just sounds profound "life isn't deep". Sorry, it will take more than this to counter Kierkegaard!

<comment><USER10> Look, I have no horse in this race, but this is clearly a personal attack in the reply above. Regardless, on what basis are you disagreeing with someone's interpretation of life as having no meaning or lacking in depth?

<comment><USER12> >Look, I have no horse in this race, but this is clearly a personal attack in the reply above.

in what way is it personal? In that he's attacking his conclusion for all of Kierkegaards' work? Or that he's trying to characterize your actions into a specific motivations?

Being called wrong , even in the softest ways, is now a personal attack?

I think it's fair to say that a 3-5 word sentence is a bit too shallow to characterize Kierkegaards' entire body of work. 'Sickness Unto Death' totally changed my outlook as a teenager reading it at the right time.

Here's the thing that's missing : life is as deep as we give it credit for, and many philosophies seek to enrichen and deepen the experience of life.

In my opinion, someone with the stance 'life isn't very deep' is in the perfect position to try to honestly absorb some of the pasts' philosophers and step away from the mammalian life of eat-sleep-breed.

In other words : our biological life _is_ shallow in reason, philosophy and human thinking itself is what fills the world with reason, objective, and depth.

Anyone with the take-away that 'life isn't very deep' receives my greatest sympathy and sorrow. I remember how I felt when I came to the same conclusions, and i'm glad I have shifted away from that perspective with the help of philosophy and dialogue with others.

Re-imagining the world with the tools that philosophy gives you through practice is a fantastic experience, and I hope that the parent who believes that life isn't as deep as people give it credit for has the chance to undergo that epiphany themselves one day.

<comment><USER10> I am not addressing any of these points about either of our own value judgments about life, because they do not address the point I have made, which is that _nothing else matters_ if some particular person interprets the meaning of their life in a particular way. No amount of your belief in some philosophy or religion will change their interpretation of the meaning (or lack thereof) in their own life. If this person posted for example that nothing Jesus said matters, because they think life is completely without depth, that's the end of it. They don't _have to_ respond to any external reasoning or justify dismissing some philosopher's entire body of work, because _they_ assign the depth of _their own_ life. You and I can discuss what that means with respect to our own value judgments, but it has no bearing on what that person thinks of their own. If you want to proselytize to that person for finding meaning in life, that's great, have at it. But you can't say that person's dismissal of some system of reasoning is invalid because his dismissal is based on value judgments entirely up to that person alone, and no amount of external reasoning on your part will "override" their value judgment.

About the reply above with the personal attack, here are a selection of phrases used to attack the author of the post, and not the author's argument: "internet edgelords", "pretty disgusting", "'insights turn out useless: life just isn't a very deep thing' is incredibly trite", "i don't mean this to come across as a personal attack, but...", "a pithy reference", "an attempt to signal knowledge (or worse yet, understanding)", "just incredibly weak."

Give me a break, that's a personal attack.

<comment><USER12> >I am not addressing any of these points, because they do not address the point I have made,

Fine, i'll afford you the same favor and ignore everything you said, too. One sided judgements isn't discourse.

Just to let you know, though, I was quite obviously replying to the first sentence you wrote in parent.

>Look, I have no horse in this race, but this is clearly a personal attack in the reply above. Regardless..

Let me ask you a simple question.

If you were driving with someone, and they slowly drove through a red-light and said "You only have to slow down on the reds." would you question that persons' understanding of traffic laws?

I don't care who finds value in what philosopher, but when the only thing you can tell me about Nietzsche is that the word has an S in it[0], then I question your objective knowledge on that topic. If someone dismisses a philosophical point of view without the objective knowledge of what that philosophy entails, then I do not believe, personally, that their opinion is worth value with regards to philosophy.

[0]: [https://www.youtube.com/watch?v=oa0bCzwSNA0](https://www.youtube.com/watch?v=oa0bCzwSNA0)

p.s. since you edited in a bunch of stuff about personal attacks after your initial post, let me mention : that word cloud you posted is devoid of who it was towards. Go re-read; the attacks are on 1) the idea 2) the motivation towards the idea -- not the person. That's exactly the difference between a personal attack and someone who is trying to disagree with that persons' idea.

<comment><USER10> I find it amusing you seem to believe that you are capable of adjudicating another person's _value judgments_ as they pertain to their own internal belief structure, and furthermore that you have literally referred to the use of some "objective knowledge" to do so. You have made a point, to be sure, but it's definitely not the point you think you've made.</comment></comment></comment></comment></comment></comment></comment></comment></comment>


What's wrong with the default build tool for Scala - <AUTHOR> http://www.lihaoyi.com/post/SowhatswrongwithSBT.html <comment><USER2> Well...

* It's slow

* There's little sense of its overall abstraction (or how the abstractions you find fit together)

* Its configuration language is undecipherable (if you want to use operators liberally consider the hoops people who need to search up `<++=` have to go through)

* It's hard to work through the documentation. I can't put my finger on it, but I think because the abstraction(s) are hazy it's hard to work out how the documentation fits together

* Writing plugins is non-trivial

* Speeding up compilation is a non-trivial exercise in futility

* It's too clever by half...

Did I mention it invokes the compiler on its own project definition? :)

<comment><USER3> All fairly reasonable critiques, but a few are actively being addressed or have been addressed

> if you want to use operators liberally consider the hoops people who need to > search up `<++=` have to go through

To be fair, the SBT maintainers have realized this for a while and deprecated them all in 2013, and removed them in the 1.0 release from 2017.

> Speeding up compilation is a non-trivial exercise in futility

Do you mean for the developer? It's more of a critique of scala then of SBT, but incremental compilation has gotten a huge speed up in the new Zinc compiler of SBT 1.0, and Lightbend has started actively benchmarking and improving compiler speeds.

<comment><USER4> The intro docs still mention some custom operators:

:= in [http://www.scala-sbt.org/1.x/docs/Basic-Def.html](http://www.scala- sbt.org/1.x/docs/Basic-Def.html)

/ in [http://www.scala-sbt.org/1.x/docs/Task-Graph.html](http://www.scala- sbt.org/1.x/docs/Task-Graph.html)

% in [http://www.scala-sbt.org/1.x/docs/Library- Dependencies.html](http://www.scala-sbt.org/1.x/docs/Library- Dependencies.html)

%% in [http://www.scala-sbt.org/1.x/docs/Library- Dependencies.html](http://www.scala-sbt.org/1.x/docs/Library- Dependencies.html)

I don't know if they're useful or not, but they're there.

<comment><USER5> Some quick explanation:

:= is the standard SBT assignment operator. You see it everywhere, so its use is clear.

/ is used for directory traversal. This is not SBT-specific, it comes from the File class in the Scala standard library. This is not as common, but it is sometimes used to setup custom source directories.

% and %% are used all the time for declaring dependencies. % is the standard separator, and %% is used to automatically choose the library version compatible with the Scala version used in the project. There is also %%%, used in ScalaJS. You can use only % if you want to, the only thing the other two do is add a suffix to the dependency name.

So yeah, useful. Still, they could probably have done without these custom symbols.

</comment></comment></comment></comment><comment><USER6> I wish there was some attempt to standardize the build tools for different languages. Every language today has its own, it's crazy.

At least makers of the make understood this.

<comment><USER7> Usually it is because as soon as the build gets a little complex, you need to define your own logic. In a minute, you are scripting your build tool with a Turing complete language. And of course users of language X want to script their build using X.

That just makes sense - define a build DSL inside your own language. For some reasons, though, the de facto build DSL used by Scala suffers by all the issues mentioned by Li Haoyi in his blog post

<comment><USER6> I am not sure if build scripts really need to be Turing complete. Wouldn't something like Dhall be appropriate?

<comment><USER8> I am. I need turing complete code to build stuff very regularly.

I'd rather we aimed to make build scripts that are turing complete and as short and simple as possible rather than non-turing complete.

<comment><USER9> Can you explain what you do that requires a Turing complete build language and couldn't be done, for example, in the 'make equivalent' of the dtrace scripting language?

<comment><USER8> * Checking some condition before building something in a particular way.

* Retrying something if it fails.

* A hundred other different scenarios which crop up occasionally, require about 4 lines of turing complete code, and are an absolute bitch to handle in a language deliberately designed not to make it possible.

<comment><USER9> Ability to do _if…else_ doesn't imply being Turing complete. Neither does the ability to retry operations.

An easy way to see that is that "Turing complete" implies "can be used to simulate any Turing machine", which in turn implies "suffers from the halting problem". Consequently, any language that doesn't suffer from the halting problem cannot be Turing complete.

So, for example, any language that doesn't allow backwards jumps, or only uses loops with numbers of iterations that are provably finite at compile time isn't Turing complete.

<comment><USER8> It actually does imply turing completeness, it just doesn't guarantee it. I know of no build language that builds in the ability to do conditionals and loops that isn't turing complete. At that point... why bother? Why not just use a _good_ turing complete language and give it some libraries that make building software easier?

There's a lot of times and places where removing turing completeness makes complete sense - configuration, user stories, translation files and simple DSLs that operate in a very restricted problem space, etc. Building software _isn 't_ a restricted problem space.

<comment><USER9> Because those complete languages _are_ Turing complete. That means, for example, that the build system cannot guarantee that a build will finish, even ignoring that individual steps may run forever.

Some argue Dtrace's scripting language and PDF (and, IIRC, various packet filter languages) are popular because they aren't Turing complete.

<comment><USER8> >That means, for example, that the build system cannot guarantee that a build will finish

That's impossible anyway because one of the plugins or the core build code may never halt.

Abandoning turing completeness shouldn't be about that anyway. It should be done because it's demonstrably not needed to solve a problem.

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER10> For those fed up of SBT, it's worth taking a look at CBT [0], which is an attempt to do this job more simply and intuitively using plain Scala code (no affiliation).

[0]: [https://github.com/cvogt/cbt](https://github.com/cvogt/cbt)

</comment><comment><USER11> It's interesting that Martin Odersky (creator of Scala, and possibly also involved in SBT) responded in agreement, linking his own critique from several years ago.

<comment><USER2> I found Odersky's comments and concern less useful than Li Haoyi's. Li's focused on the unclear - and broken - abstractions, while Odersky's seemed to focus more on the misapplication of language features. Am I reading this incorrectly?

<comment><USER11> I think that's probably a fair comment (from my admittedly somewhat limited understanding). That said, both do seem to share a drive for simplicity and clarity at their core, and Li Haoyi's post does have the advantage of another 6 years of insight / subsequent changes to SBT.

</comment></comment></comment><comment><USER12> I had an interesting conversation once, in a Scala meetup. I was talking with someone about SBT being a gigantic pain in the ass, and their faire point was "I like SBT, it's better than Maven !".

While SBT might be better than Maven for the long Scala compilation time, it's nowhere near the user-friendliness of more recent build tools in languages like Go, Rust, Javascript, or [put your favorite lang here].

It strike me how close the Scala community is to Java's.

<comment><USER13> Go doesn't have a build tool like SBT or Gradle, it doesn't even have an official package manager.

Go has a compiler and that's all. You could argue Go is easier to build that Java, but it's because makes a lot of assumptions about how you organize your code on your HD which can be a hindrance if it doesn't fit the way your company operates. As always, Go is simple for simple use cases and get complicates as soon as you try straying from what go developers decided for you, there is no flexibility with that language.

Javascript has tons of build tools that are all clunky and horrible to use.

</comment></comment><comment><USER14> It is funny he mentiones Bazel in the article but some doesn't consider Pants [1] at all. For me, not just in a work context, Pants is a clear winner. Most SBT project already have a bit of mono-repo flavour: main and sub-projects. Pants brings this to the next level and and speed and other goodies on top of it. Also, a lot of CI thinking has been put into the tool already so it's a breeze to distribute the build across n shards ..

[1] [https://www.pantsbuild.org/scala.html](https://www.pantsbuild.org/scala.html)

<comment><USER4> Do you mean Pants is a clear winner compared to SBT, or compared to Bazel and Buck?

<comment><USER14> Compared to SBT. Last time I checked Scala support in both Buck and Bazel was very basic at best.

</comment></comment></comment><comment><USER15> Why does the Scala community needs its own build tool? Why not just use Gradle? Or if something is missing, adding this to Gradle and then using Gradle.

<comment><USER3> You can build Scala projects with Ant, Maven and Gradle, but for some reason, a language community often gravitates toward the language-specific tools.

<comment><USER16> Considering gradle is heavilly used in Java, kotlin, (and groovy) while it's DSL is in groovy (while the back end is largely Java these days), that's not always true.

</comment></comment></comment><comment><USER17> "It looks like something the germans would have come up with... 70 yrs ago... in a submarine."

Noting this down for random usages. Very clever.

</comment><comment><USER18> I've been happy Scala and Gradle user for years now and it keeps getting better.

Also tooling works like a charm with IntelliJ first class support for Gradle.

IMHO Gradle is in a sweet spot of making simple things really simple and not making complex things (integrating native, custom plugins, multi project, Java interop) unnecessarily complex. Also Gradle has been getting faster and more user friendly every release.

I have been trying to gather motivation to tip my toe in SBT but without success.

/fanboypost

</comment><comment><USER19> It's nice to see how the bad things about the Scala ecosystem are finally getting out now that the hype is vanishing.

</comment><comment><USER20> * totally unusable behind an authenticating proxy (even though they claim it works)

<comment><USER21> One solution I've used for an uncooperative proxy is to put my own proxy in front of it. Then I connect the tool to my proxy, which sets things up nicely for the real external-facing proxy. I've used privoxy for this, it's pretty easy to set up. Here's a post from some dude explaining what you might need to do: [https://siderite.blogspot.com/2014/02/using-prixovy-to- forwa...](https://siderite.blogspot.com/2014/02/using-prixovy-to-forward- to.html)

</comment></comment><comment><USER22> never understood why people didn't just used maven/ant.

sbt should never have been more than a config-file-compiler to some subset of the above.

<comment><USER23> Maven is no longer maintained, and has many long-standing bugs that may never get fixed.

<comment><USER24> What? I thought it was _the_ java build tool...

<comment><USER25> It is. It doesn't even need to be updated that often as most of the functionality is in plugins. A large set of which are maintained by the core development team.

</comment></comment></comment></comment><comment><USER26> Mostly it's slow. Otherwise it's okay.

</comment><comment><USER27> As an interesting side note, Li Haoyi is the son of Singapore's prime minister Lee Hsien Loong.

<comment><USER28> Interesting indeed.

Question: why would he not share the same family name?

Completely ignorant here, is there no connection between childrens' names and that of their parents?

<comment><USER29> Lee and Li are probably the same word, transliterated to English characters differently.

<comment><USER30> Yes, specifically, 李, which, at least if you count Korean variants "Ri/Rhee" and "I" and Cantonese "Lei," is the world's most common surname.</comment></comment></comment></comment>


How Xanadu Works: technical overview - <AUTHOR> http://dubinko.info/blog/2009/11/22/how-xanadu-works/ <comment><USER2> Wired had a long but interesting article about Xanadu back in 1995: [http://www.wired.com/wired/archive//3.06/xanadu.html?person=...](http://www.wired.com/wired/archive//3.06/xanadu.html?person=ted_nelson&topic_set=wiredpeople) In many ways the story of Xanadu is sad and depressing.

Of course, Xanadu is (or would be) a digital remake of Vannevar Bush's memex: <http://www.theatlantic.com/doc/194507/bush> Frankly, I'm not sure Ted Nelson has added much to the original concept with Xanadu.

You can download Xanadu(R) Space(TM), a user interface demo, from here: <http://xanarama.net/> Windows only, but I got it to work in WINE. Ted Nelson really likes his trademarks, probably because it's as tangible as Xanadu has become after 40 years.

</comment><comment><USER3> _We may have gotten ourselves into a mess with the architecture of the present web, but even so, Nelson's vision will keep us aspiring toward something better._

No, no, no! The last thing I want is something more Xanadu-like, where everything costs, it's all centrally controlled and all documents are transcluded from each other. The web is, IMHO, a vastly superior idea _because_ of its simplicity and openness.

</comment><comment><USER4> I worked with Ted for a few years on and off on Zigzag. He's hard to work with, but the rewards (like free dinners in restaurants, free candy, priceless signed copies of all his books, and high table dinners at Oxford), make up for the 'difficult' coding (which isn't that difficult).

Also, I have a PDF of an interview with Ted (which a guy sent me and is incredibly rare) in a 1991 magazine founded by Louis Rossetto (of Wired fame), where Ted chats openly to Louis about Zigzag, a big contrast to the demolition piece in Wired a few years later. I might post this to my website and post a link to HN.

<comment><USER5> Are you Andrew Pam by chance?

<comment><USER4> Nope! I know Andrew though. Overall, I hardly got any public credit from Ted for my work, but never mind, that's not why I did it, and he has to prioritize who to credit when everyone chips in a little.</comment></comment></comment>