Programming Is a Dead End Job - <AUTHOR> http://thecodist.com/article/programming_is_a_dead_end_job <comment><USER3> I respond really negatively to the notion of 'dead end.' Programming isn't a dead end job any more than welding is a dead end job or painting. But it is a _trade_.

What is more, managing is a _different_ job than programming. Not a lot of programmers really internalize that until they try out being a manager. Architecture, and technical leadership in general, is still another job. It takes the ability to internalize massive amounts of detail, organize it into some coherent frame work and then communicate that framework as needed to various levels _in the language they understand._ So for programmers they need to know how the parts fit together, for managers they need to know how the parts integrate with the business process, for sales they need to know how the parts make them better than the competition (or equivalent to).

From an economic standpoint, being able to generate 1000 lines of syntax error free code per day, is perhaps the best possible programmer you could be, but its never worth more than 10 programmers generating 100 lines of syntax error free code a day.[1] So yes, there is an economic limit on your pay.

The good news is that generally that economic limit is much higher than the cost of living, and you can run at that limit for a decade or more, so you can be reasonably expected to save enough to retire and not have to work any more.

Dead end jobs are jobs that will never pay you enough money to save for retirement. Programming isn't one of those jobs.

[1] Yes the 9 women, one month joke applies for short sprints but in general not for longer coding projects.

<comment><USER4> You are right. Programming is a blue collar trade.

<comment><USER5> That is a bit of a reach to call it blue collar.

I have blue collar friends from high school who envy what programmers do and make and I do what I can to try and persuade/teach them to learn to code and make a better life for themselves.

<comment><USER6> Most _everyone_ has forgotten the 2000 dot com crash, when all the computer jobs disappeared. This "learn to code" is just how it was then.

I would bet money that in less than five years, a lot of software people will be unemployed -- again. (If I win, good. If not, good. :-) )

<comment><USER7> I'm curious - how much money would you be willing to bet on that? At which odds?

I've been through the dotcom crash and minor disturbances after, and the jobs never "disappeared". Yes, there were layoffs, pay cuts and hiring freezes. But not _all_ jobs disappeared, and most of the people who lost their jobs found new ones after a while. I'm not diminishing the pain and suffering of those who got caught in bad situations there, but it's not like the whole IT disappeared and people went back to abacuses and wired telegraph.

<comment><USER6> >>But not _all_ jobs disappeared

I wrote "all jobs" in one place and in another "a lot of software people [...] again".

Since you were also there, what I meant should be obvious...?

In my Swedish job market, there was also something similar around a decade earlier. But it was not only for software people.

</comment></comment></comment></comment></comment></comment><comment><USER8> This is silly.

First, very few people become millionaire CEOs. If thats your standard for success, then every path likely leads to failure because no path reliably leads to that kind of success. Some paths are more likely than others, but none are very likely for the _average_ person.

Part of the reason for flat-ish career trajectory is that programmers earn more at the start than most. Some professions have more of a premium on seniority and experience than others. Senior doctors and lawyers for a combination of the above 2 reasons probably have steeper salary growth than programmers. That said, good 10+ yrs programmers do earn pretty damn well. 10 years as a doctor or lawyer and you're still considered a youngin.

Anyway, if you're the CEO, you aren't a programmer. If he's claiming that being a programmer is not a good starting point for becoming a CEO, I think he's wrong. Look at all the over 40s who were coders at some point, many transitioned into management or something else. Programming actually offers a lot more of that kind of opportunity than anything else.

<comment><USER9> You can become a millionaire CEO if you are intelligent with at least a 10-20% success rate. Get 5 years work experience, ace the GMAT, go to a top 5 MBA, do consulting at 250-500k/year for 10 years for a company like Bain or McKinsey, then get hired as CFO of one of the companies you work for, 5 years later get promoted to CEO.

Even if you don't make CEO, you can get to several multiples of an engineer's salary with a 100% success rate with this plan. Let's face it, a software engineer is far from a top tier occupation, and for good reason. You can hire very high quality people with 10 years of experience in eastern Europe for $30/hour.

<comment><USER10> As one of those people - you can live like a king on that kind of money in eastern Europe. As a freelance programmer I can afford to pay rent for a flat in Ljubljana that puts most SF apartments to shame both in size, comfort, and location.

What's better, I can do that _while_ actually living in the Bay Area. Just because I can and I like moving back and forth between here and home.

<comment><USER11> Kings tend to buy houses not rent flats. Ljubljana seems nice though.

<comment><USER10> Eh, I'd much rather live in a nice flat than a house. And I guess it might be nice to actually own one eventually, I actually prefer renting. Much less of a hassle.

<comment><USER7> Wait till you get a family, your ideas on merits of moving around may change drastically.

</comment></comment></comment></comment></comment></comment><comment><USER12> It's a well-written essay (I say this as someone who has been a journalist/editor/manager and is now doing quite a bit of programming again for Recent.io). But really you could say the same thing about many other jobs:

* Do you love to report the news? In most jobs as long as you continue to be a reporter you will likely have a limited set of promotions you can get...

* Do you love woodworking? In most jobs as long as you continue to be a carpenter you will likely have a limited set of promotions you can get...

* Do you love photography? In most jobs as long as you continue to only take photos you will likely have a limited set of promotions you can get...

Even in you look at areas like law, the top 10% of earners in the profession are not the ones who do all of their own legal research and brief writing. They're the GCs at publicly traded companies or equity partners at large law firms, where they're responsible for the work output of tens or hundreds of lawyers. Which means, yikes, they're managers too.

<comment><USER13> A cynical take on your observations sometimes occurs to me, and seems pertinent.

The managers set the wages. Therefore, they will be well-paid, and their contributions will readily recognized.

This is simplistic and does not explain everything, but I think it is a major ingredient.

<comment><USER14> The market mostly sets the wages. Pay too low, and you'll be unable to hire anyone. There's also an upper bounds on what one person is worth. It can be a lot, and the difference in productivity between average and superstar programmers is well noted. But even a highly productive programmer has a limited value as an individual member of a team.

Executives get promoted because they've proven to be able to get groups of people to work together to achieve something. Most programmers don't want to or can't do that. Our trade is mostly one of individual contributions, often as part of a team but generally we're not responsible for more than our own tasks, and we're generally not blamed when one of our peers can't keep up.

<comment><USER15> > The market mostly sets the wages

Unless, you know, several high-ranked managers collude together. Like it happened with Google and Apple.

</comment></comment></comment></comment><comment><USER16> No offense to the author, but what a terribly written article full of logic holes. For example:

'Our parent company's former CEO started off as a programmer 25 years ago, switched to manager; in 15 years he went all the way to being CEO of a $4B company. After 10 years he retired recently with mansions and cars and no worries. Meanwhile I work with people who started around the same time and who are still senior software engineers.'

So the author just picks one person that happens to be the CEO evetually? What about the rest majority of managerial forks? They probably are stuck in corporate ladder and even may be fired already. The chance of a person working on a corporate managerial job evetually becomes a CEO is likely no higher than a tech person eventually becomes a CTO. So why just pick one CEO person to illustrate managerial role is more promosing than tech role? Comparing the max value of a group to the average of another group is unfair.

Also, I program because I love programming. Even if you gave me one billion dollar making me manage people for the rest of my life instead of writing code, I would still turn it down. If doing the thing I love is dead end, then I beg a different definition of dead end. Okay, just use author's definition of dead end as slight chance of moving up, but I just don't care as long as I love the job I am doing.

__

An interesting side note is programming as a hobby. But I would still rather programming both at work and a spare time, as long as the day job I do making me happy.

<comment><USER17> > The chance of a person working on a corporate managerial job evetually > becomes a CEO

Simple mathematics shows it is very unlikely for any random person to become a CEO. After all, if everyone is a CEO, who is being managed?

</comment></comment><comment><USER18> Programming is hardly unique in this regard. In fact, I'd wager that the vast majority of professions are like this. There's a simple reality at work: when you are programming code there's only so much effect it will have. That effect is greater when the organisation is small (i.e. a startup) but there's a limit.

Once you become a manager in charge of five developers you're suddenly able to affect 5x (well, not quite, but..) the change within a company. And yes, yes, I know - you're not actually _doing_ the change, but you are responsible for planning, organising and maintaining it, which in many ways can be more valuable to the company.

<comment><USER19> On the other hand, without all of the actual programmers you would have no product and no profits at all. Neither group can function without the other, and pay should reflect that rather than the ridiculously unequal spread we just automatically accept as normal.

<comment><USER18> Yes and no. It might be an unpopular opinion (and I'm a programmer myself) but 80% of programmers are relatively easily replaceable, particularly in large organisations. There are indispensable unique unicorns out there, but they tend to be well compensated.

When a project is managed by one manager and coded by five developers, you could easily lose replace two of those developers with little impact. If you lost the manager (who is calculating deadlines, coordinating with other departments, pitching for funding, as well as managing the individual developers) the project could run into problems quickly.

On the face of it, it seems unfair - the developers are the ones actually writing the code after all. But the HN trope that managers are useless and feckless isn't correct.

<comment><USER20> >If you lost the manager (who is calculating deadlines, coordinating with other departments, pitching for funding, as well as managing the individual developers) the project could run into problems quickly.

Really? In my experience managers can be replaced rather easily, or at least more easily than it is to a replace a single engineer. It always takes some time for the new software engineer to learn the specifics of the project, and even more time to really grasp the business domain. The new manager has stuff to learn too, of course, but in my opinion it's less than what a new engineer needs to learn.

In addition, if you replace two software engineers, you pretty much lose two man-months of work, but replacing a manager shouldn't cause much problems in the first month.

<comment><USER21> If you're a manager your biggest asset is relationships with developers and with peers across the organization. Those assets can't be replaced at all - <USER2> takes time to build trust, and trust is completely non-fungible between people. I've seen departments just decimated (worse, actually...decimate means "to kill 10%", and in this case over 50% of leads & senior engineers left) because a well-respected manager left.

</comment></comment></comment></comment></comment><comment><USER22> I read the blog post and my reaction is: they are saying that being a programmer is not a good way to become a manager, or to be successful in terms of what makes a manager successful.

As a developer who has also been a director and a team lead:

\- Good programmers get pretty good wages in the current market. I wouldn't call earning 6 figures a "dead end job".

\- The number of people you manage is important to a manager, not a programmer

\- Becoming a CEO is important to someone that wants to manage a company, not to someone that wants to write code

There are many rewards in writing code, if that's the job you like. You can write code that makes a difference in a company which does something you agree on. You can create a new company or product from scratch. You can spend your career learning new stuff. All of this is exciting to me!

If your definition of success is a truckload of money, retiring at 30 and being the boss of 100 people... you shouldn't be a coder, but that's a very narrow (and let me add, totally shallow) definition.

</comment><comment><USER23> Ha, this is a load of shit.

The magic in being a carpenter or a painter or a builder of any kind(including programming) is that you can _create_ something from nothing. The jobs may suck but I still have the _power_ to, whenever I want, execute and actualize my ideas.

I pity those with vision but no means to at least prototype that vision themselves. That's dead end to me.

Builders are magicians and they're certainly not inoxorably linked to their boring day jobs.

</comment><comment><USER24> This article reminds me a of a quote from Learn Python the Hard Way:

"Programming as a profession is only moderately interesting. It can be a good job, but you could make about the same money and be happier running a fast food joint. You're much better off using code as your secret weapon in another profession."

"People who can code in the world of technology companies are a dime a dozen and get no respect. People who can code in biology, medicine, government, sociology, physics, history, and mathematics are respected and can do amazing things to advance those disciplines."

"Of course, all of this advice is pointless. If you liked learning to write software with this book, you should try to use it to improve your life any way you can. Go out and explore this weird, wonderful, new intellectual pursuit that barely anyone in the last 50 years has been able to explore. Might as well enjoy it while you can."

[http://learnpythonthehardway.org/book/advice.html](http://learnpythonthehardway.org/book/advice.html)

</comment><comment><USER25> Can we please come back with our foot on Earth ?

Waitress is a Dead End Job, WallMart employs are a in a Dead end job, hairdresser is a dead end job.

Whoever makes > 60k $/yr is not a dead end job.

Please let's try to realize how lucky we (as programmers) are to live(/and work) today.

</comment><comment><USER26> > Do you love to program? Don't expect to ever become CEO

Why the hell would I want THAT? Are you crazy?

</comment><comment><USER27> You don't get to be 4bln $ companys CEO doing management job 9 to 5 any more that you are going to be Marcus Persson or John Carmack doing programming job 9-5.

Sky is the limit only for people who have right combination of skill and luck.

<comment><USER24> > Sky is the limit only for people who have right combination of skill and > luck.

Don't forget hard work and persistence! :)

<comment><USER27> I sort of treat ability and propensity to work hard and persistence to be skills. Ones I almost completely lack.

</comment></comment></comment><comment><USER28> Seems more like a realization of the human life cycle. Personally I was so happy to get a programming job out of college and a good pay. After a number of years of good performance and promotions I'm eventually a senior engineer about to jump to principal engineer.

But that's when it hits you. You're still in your 20's... is that all you're ever going to be? Hey, the six figs is great, and you're on track to retire earlier than most, but was that it? Is that why you kicked butt in school for ~20 years, to write [insert field] code to make someone else rich?

It's a tough realization to make, but for most anyone, in most any industry, they'll get to the same place. Then you get to decide if you want to (1) make achieving as high a level as success as possible you're life's mission or (2) live a good life and let work simply be the source of your sustainable from M-F. In the end, we're all going to be worm food, so do something that matters to you in the time you've got left.

</comment><comment><USER29> If you enjoy programming then going into management or becoming an architect is really a demotion to something less interesting and which likely requires much less skill. Becoming an n-th level uber-engineer really only makes sense if you believe that top down hierarchical systems of organisation are effective or worthwhile.

</comment><comment><USER30> I don't find this a good point of view. The article goes, "if you love to program and make a decent wage and enjoy your work..." \-- How many people really get that sort of satisfaction! Enjoy it if you've got it all. You can't expect the world to gift you millions if you aren't doing anything different.

Moreover, if someone really is an amazing coder, then there's a good chance that he/she started the career at a good salary level, while people in other profession were still grinding at work. Why complain now if you didn't stop to brood over the situation then. That's Karma :)

If you want to stay in your comfort zone that's perfectly acceptable. But don't whine! Comparing a programmer and a CEO, asking why one should earn higher for seemingly equal amount of work is not right. Being the CEO means taking risk, putting together business plans, qualifying ideas, cutting deals, leading teams, handling legal and financial work, hiring people for all functions. The blogpost itself is peppered with examples of people who took the risk and made it big. How many software engineers really want to handle all these complexities?

There simply aren't enough top spots for everyone. Some love to lead, some love to code... some love to do both. You make your choices. Of course some people do get lucky and some people even win by clandestine ways. But the focused, hard-working one has his place. Everyone doesn't want a mansion and Ferrari. I don't. Why make that a parameter for success!

</comment><comment><USER31> I was a junior manager, manager, senior manager, chief operating officer, and hated it.

I even have a Master's of Management, which I enjoyed.

But I love being a senior analyst. I want to be a senior analyst forever. It's enthralling to me. I decline management job offers. It's not worth a few extra bucks for me.

I'm putting my savings toward a tech angel fund for when I'm too old to program. I'm working on side projects that might blow up big time one day. There are other options besides management.

</comment><comment><USER32> No mention of finance? Working for the devil sure, but if you know your stuff they will pay and pay and pay for top class programmers. Also depends on your idea of a dead end salary.

If you enjoy what you do and can make £50k out of it then you should be pretty happy with your life.

</comment><comment><USER33> I'm about to stop programming at my company because I have too much to manage as a founder. It makes me really sad and also pretty scared. Anyone else experience this?

<comment><USER34> New Relic's CEO has some tips on how to keep coding: [http://blog.newrelic.com/2014/03/11/sxsw-coding-ceo- recap/](http://blog.newrelic.com/2014/03/11/sxsw-coding-ceo-recap/)

      1. Surround yourself with amazing people.
      2. Carve out specific times for development work.
      3. Focus on high-value projects.
      4. Make it clear why a coding CEO is good for the company.

<comment><USER33> Good advice! I still code at night, picking up some visible UX stuff that wouldn't make it on the road map otherwise. That way, we never have a week where it doesn't APPEAR that the product has gotten better just because whatever was on the road map wasn't visible or is taking more than a week. Seems to help relations with customers/investors/non-technical parts of the team and I enjoy it.

</comment></comment></comment><comment> at-fates-hands The author has a point, and one of the keys here is that the hierarchy for developer is pretty flat. All the jobs I've had except one very small startup the structure was like this:

Entry Level Developer (coding 100% of the time)

Senior Developer (coding 50%, managing 50%)

Manager, Lead Developer, etc. (managing 100%)

from the time you take a senior position, you're essentially being groomed to manage the team you're on. Whether you're another level between developers and your director/manager or simply the manager, you essentially stop coding.

I think this is the point. It's not so much that programming is a dead end, the inherit structure of most companies is flat relative to the position. It's an interesting idea, how do you give a guy seniority and a nice pay raise, without taking away what he probably loves to do? Obviously for most companies, it means increased responsibility and pay = managerial tasks.

For the last several years, I've been in this purgatory. I love programming, but every senior position means a reduction in my development role and an increase in managerial responsibility. The problem now is my skillset is at a place where I'm pretty much at the ceiling. It's hard to say, "I have a senior level skill set, but don't want to be a manager." I know my two options are to either bite the bullet and get into management (which to me is like adult daycare) or start my own company.

As of now, I'm already laying the groundwork for a startup, so I can transition out and do my own thing in the next two years.

</comment><comment><USER35> "Whatever you do, you have to find a balance between doing what you love and making enough money to live the life you want, or what your family needs. It's not always an easy choice."

If you love to program the choice is easy. It's not like programmer wages are so low you have to live under a bridge.

Personally I'm psyched that people will actually pay me to program, because if they wouldn't, I would still be programming.

</comment><comment><USER36> I am blessed with a dead end job where I can love what I do almost everyday, see progress everyday, and work with smart people.

I have flirted with 10 of millions of dollars in wealth, but I don't seem to have the timing to make it stick.

But at the end of my life, if my kids can say he loved what he did, he loved us, and he loved life. I will be a lucky man indeed.

</comment><comment><USER37> If your goal is to become CEO of a company that would be large enough to require an engineer to quit coding, it's a fairly universal truth that you will no longer be doing what you did at the beginning of your career. It's not simply that you no longer code - if you come from banking, you stop doing that. If you come from accounting/finance, you are no longer spending all day in Excel. If you come from sales, you may do a bit of it, I guess, but you are no longer regularly jumping on the phone with customers. If you come from marketing, again, you may do a bit, but you are definitely not spending time in AdWords or developing marketing campaigns.

Is there any job that this truth wouldn't apply to? Being a CEO is a full time job that has it's own requirements. It's not simply a title that you slap on a normal job.

</comment><comment><USER38> Managers can't change jobs and are under total control of their bosses. Developers can change jobs at any time but won't make as much money as the management cartel (which, suprise, decides that management should get all the comp). Both jobs kind of suck in their own way.

</comment><comment><USER39> It depends on the company. I worked at a large software company and the promotion track for software engineers went all the way up to something like Fellow Engineer or Principal Engineer. Almost no one got to those roles because they were so high up the track. After the several levels of Senior Engineer, they had Expert Engineer. One person I knew made it to that level (after some 20-30 years experience) and still programmed every day.

Edit: that said, I don't consider it a dead end job if you have to switch out of programming to keep advancing because often to become an engineering manager at companies they want you to have programming experience. I think a dead end job is one in which your experience serves no purpose or as no pre- requisite for better paying jobs.

</comment><comment><USER40> I like very much my dead end, and hope to stay in this dead end, until the end of my career (pun intended).

No need to go to boring management positions.

<comment><USER41> while(1)code();

</comment></comment><comment><USER42> This is plain wrong.

Facebook, Microsoft, and Google have parallel tracks for programmers and managers. You can progress all the way up to Senior VP equivalent as an engineer with no management duties. These roles include compensation equivalent to traditional CEO level roles.

Eg. [http://www.forbes.com/sites/ryanmac/2014/02/28/meet-jeff- rot...](http://www.forbes.com/sites/ryanmac/2014/02/28/meet-jeff-rothschild- the-hidden-facebook-billionaire-old-enough-to-be-zuckerbergs-dad/)

<comment><USER43> _This is plain wrong. Facebook, Microsoft, and Google have parallel tracks for programmers and managers. You can progress all the way up to Senior VP equivalent as an engineer with no management duties. These roles include compensation equivalent to traditional CEO level roles._

It is _a lot_ harder to make "Director-equivalent programmer" in those companies than to make Director. In terms of skill, hard work, and intelligence, the competition is a thousand times tougher.

<comment><USER42> I don't have enough information to judge that, since I never made it to director level at my time at FB.

One salient note is that at FB you can switch between parallel tracks whenever you like. Eg. Any director level engineer can switch to being a director level manager and vice versa.

</comment></comment></comment><comment><USER44> What's the problem making a good living doing what you like?

Here's a spoiler - most people will not be rich.

</comment><comment><USER45> I think "Coding" as a job can be best analogous to an old job called "Samurai".

A good samurai's aim is to be the best at skills. His all work is dedicated towards a "kingdom". Every samurai doesn't wants to become a king. They just want to server their king.

And the King's duty is to take care of its army and people. I think king's jobs is highly overrated. In real life its difficult to be a king. In the end its just a job with lots of responsibilities.

<comment><USER19> Then the samurai should behead the king and redistribute all of the fine luxuries that the samurai earned for the king to his samurai buddies. Then simply find a clerk to do the king's old job.

</comment></comment><comment><USER46> Yes, it's true. My solution was to find a job programming at an excellent place to work, so that I can make sure I do valuable things and still be done with my day around 1-2pm most days. Take my dog for a walk, read, learn, whatever after that.

If they're not gonna pay you in gold get 'em to pay you in some other way. All the prestige stuff ("a seat at the table", job titles, authority, etc) isn't actually worth much anyway.

</comment><comment><USER47> This is not an apples to apples comparison. The writer is casting programmers as "commodity code producers", meaning the end goal of the code and the path to creation (e.g. what technologies to use, modules to create, etc) are already defined. That's trivially true. You could make this same argument for an artist if there were a market for people that could paint and draw things that others told them to paint using specific techniques. You could make the exact same argument for managers. If you created a perfect recipe for "motivating a team" and "evaluating a direct report's performance" and all these other nebulous ideas, and just paid for executing that recipe, you'd make management a "dead end job". If you create a recipe for someone, 99% of the work is done. The true value comes from the joining of the "what" and the "how" with the execution. Divorcing the two makes any job a commodity job because it assumes the goal and the path have already been determined. So comparing a "commodity code producer" with a full managerial position is not an equal comparison.

</comment><comment><USER48> Seeing promotions as your only form of career advancement is a little misleading. In management the only way you can increase your income/status is directly through your employer (or switching jobs). In programming, you're a builder. You can make templates, assets, etc. to sell. Your income increases can come from applying the skills you honed at work in the world around you

</comment><comment><USER49> The company I work is around for 40+ years now. There are some folks as "Programmer Analyst", "Software Engineer", "Sr. Engineer" for 20+ years now. I have asked many of them why you didn't move up the ladder and report to someone junior ( or H1B in his early 30's). Most of the time answer I got it, they love what they do. They love having opportunity to program , provide logical + thoughtful solutions. Of course, when new management comes in and there are times to make decision to layoff, these people become victim due to range of salary they have reached, age, skillset. This is very unfortunate but true. I would not completely write off what author is saying but I believe it depends on individual prospective. Of course, money is important factor but if you are getting a job 8 am to 5pm + raising your family/kids comfortably + spending time with family and yet have good balance when you retire then being programmer is quite good deal actually.

</comment><comment> enjoy-your-stay Programming itself may be a bit of a dead end, where you can quickly hit the glass ceiling; but if you get involved in other important parts of software production like design, specification, requirements gathering, support, sales and marketing then then the domain knowledge that you can gain can lead you onto many other things.

Technologists who also have a lot of domain knowledge are gold dust to many companies because they can straddle the world of business and IT and help bring the two sides together to develop better solutions. Much of the business of computing still baffles a lot of very intelligent people, so if you can act as the translator between these to sides then you can definitely broaden your horizons.

The thing is as well, that you may not have to give up programming entirely. I've managed to lead IT projects, and then once they were delivered go back to working on programming again.

</comment><comment><USER50> Calling programming a dead end job is kind of outrageous. I normally associate the phrase "dead end job" with stuff like pizza delivery, or some of those severely monotonous office jobs like data entry or working in a call center. Most people would perceive programming to be an excellent job. A good wage, enjoyable/challenging work, and loving what you do: there are many who would _love_ to be stuck in that kind of dead end.

edit - Somehow, I goofed and lost the rest of my post. Anyhow, I noticed that in a separate blog post, the author said something like "Programming isn't just a job for me, but a way of life." I questioned whether that is something you can say of a job that is truly dead-end.

</comment><comment><USER51> Narrow and very misleading way of looking at engineering and careers for sure because it assumes a false binary choice.

A choice between doing what you love and making a big payout by doing something else. This assumption is wrong.

On one level, there is truth to what is stated--- but it correlates more to big company paths, people who have a conservative view on their ability to leave an impact on the world, and people who are narrowly focused on programming for programming's sake.

It's not about "switching" to management (this thinking is big company), it's about taking your technical skills and making things happen. If that means you have to be a startup founder or a leader (CTO, CEO, VP engineering, whatever) who ends up not coding much anymore to make that happen, so be it. The point is if you love programming, do it, get amazing at it, solve real problems... and you'll have limitless potential in the future.

Being a programmer/engineer gives you the ability to find and build real solutions to problems in the world. If you're good, being able to build things = creating a startup or partnering with others to take on big things.

Regardless of statistics on the rate of success of startup endeavors, this potential and this opportunity make being a programmer completely worthwhile and rich with potential. You do _not_ need to be a manager to have financial success. What you need is equity, equity that appreciates massively in a successful company. Financial outcome is a nice side effect of starting or joining a startup but not the only metric of success.

IMO, the more "correct" way of looking at a career as an engineer is what other smart people have blogged about. After graduating, join the best mid- level (in terms of size) startup you can (or hell, start your own). The relationships and the higher opportunity for rapid growth will serve you well down the road--- whether that means you're an executive or still an engineer who codes. And it's this perspective that creates a healthier mindset where you aren't thinking "Oh when should I jump ship into management" but rather "if I build X, it could solve Y in Z industry... I can partner with A and together we can make it happen or I'll start a side project and build a solution and see if I get traction": [http://hunterwalk.com/2014/03/08/new- grads-midstage-startups...](http://hunterwalk.com/2014/03/08/new-grads- midstage-startups-are-your-best-first-job-in-tech/)

</comment><comment><USER52> I think it's a bit pathological that we equate career success with being in management. You only need so many leaders. If you get too many people trying to be leaders, you end up with pathological organizations that engage in a lot of bikeshed painting.

I think the problem with programming is that programmers are assumed to be interchangeable; or at least, management would like to think so. To me, this seems absurd, I'd rather have one good programmer than 10 mediocre ones. (And good programmers are rare, but not impossibly so). The problem is that programmers that are 10x more productive don't get paid 10x more. (And seriously, some programmers really are 10x more productive than average).

</comment><comment><USER53> Doesn't this describe almost every profession?

</comment><comment><USER54> This is absolutely a problem, and a dilemma I try to cope with. I'd like to think that I'm a pretty good programmer, but I know that if I continue down this path I will reach a plateau at some point.

The hardest part for me to cope with is that the y-intercept of programming is significantly higher than that of business, but the slope is much less. So while I might be making twice as much as my business peers when I first graduate, they will eventually overtake me.

Makes me wonder if maybe I should be switching my major to economics... does anyone have resources for people who have successfully transitioned from programming to management/business?

</comment><comment><USER37> Maybe I am reading this wrong, but it reads to me like the author wants to continually be paid more without taking on additional responsibilities (which, correctly or not, are considered more valuable by potential employers). I don't think he is correct that fantastically talented programmers don't get pay raises. However, at a certain point, if no one is willing to offer more for just programming, to increase ones earning, you must take on new responsibilities, the same way that a fantastically talented anything has a ceiling on how much they can earn without adding value a new way.

</comment><comment><USER55> I wouldn't call it "dead end" but outside of a few rare companies, programming has a fairly impenetrable salary/advancement ceiling. I loved software development, still do, but it's the kind of career where you max out your salary after about 4-5 years. So, I reluctantly moved in to various flavors of management. Still code little projects at home on the weekends, but unfortunately not as a job anymore.

I'd love to go back to work as a programmer (still keeping my skills sharp and up-to-date just in case), but the best gigs available promise the same title/salary 5 years on.

<comment><USER56> This is what most programmers-turned-managers keep telling me. The pay is a bit better but they miss programming.

</comment></comment><comment><USER57> This is exactly why even though I graduated with an engineering degree, I went straight into business.

I didn't want to have to make that jump to management. Rather, I started with an analytical role and moved up (well I actually left soon after).

While there aren't many exec-level programming jobs out there, there are plenty that still require analytical skills. While none of the execs where I worked crunched numbers themselves, they reviewed other work and poked holes in business analyses. I think analytics career paths are perfect for the people who like engineering but want the upward mobility into management.

</comment><comment><USER58> Click bait. You're saying if I'm a programmer I might not be a millionaire someday? Oh no! That's the only reason I wanted to be a programmer in the first place. Better reevaluate my life decisions. /s

</comment><comment><USER59> I think it's because most programmers end-up working on shit corporate software or under some PHB which just destroys any joy, and finally your creative soul. If your joy and/or soul is gone, any job is a dead-end job. I sold my software business to a public-listed company and hated every day I was there; corporate politics, PHBs, most software developed by company being absolute shit (I pathologically hated their core software platform). I had enough. Now I'm back on my own writing software I enjoy and couldn't be professionally happier.

</comment><comment><USER60> There is also a third option: freelancing. This way you can keep programming, with only a moderate amount of "management" (finding new projects to work on/dealing with clients).

</comment><comment><USER17> > Maybe it's dumb but you have a choice between doing what you love and making > a big payout by doing something else.

This is not strictly true. Programmers are relatively well paid. You can decide to live significantly below your means, and invest the rest.

For example, my neighbor once referred to his Oldsmobile as his "quarter million dollar Olds". I asked him what he meant, and he said that was the current value of the stock he'd sold to buy it.

<comment><USER61> I agree. Sr. Software engineers at our company can make $120k + bonus. It's not that different than their IT managers.

And IT manager is a really crappy job if you love to code. Also, it is very difficult to go from becoming IT manager to IT director or higher, especially in bigger companies.

VP of IT in large companies is filthy rich territory as per OP, but for everyone VP of IT, there are several hundred developer. Opportunity to become VP, or even director is not all that common.

<comment><USER49> >Also, it is very difficult to go from becoming IT manager to IT director or higher, especially in bigger companies.

This is so much true.

>Opportunity to become VP, or even director is not all that common.

Completely agree. You hit nail on the head.

</comment></comment></comment><comment><USER62> What about consulting? Inventing a new framework (e.g. Rails), what about writing books on languages, design and the rest?

If you are _really good_ in programming these days you can achieve more than ever before. But if you really like programming that much, then making money isn't your highest priority.

The fact that are way better payed jobs, it's a reality (lawyers, investment bankers). If you are in it for the money then you might want to consider another career (e.g. investment banking).

</comment><comment><USER63> Anyone who has transitioned from programming job to a managerial role, how did you do it? Do you recommend going back to school for an MBA? Would love to hear suggestions.

<comment><USER64> I ran my own company for 12 years which probably helped. Took a contracting role at a Fortune 500. Took extra time to come up with suggestions to managers on how to improve the overall development team. Left when the contract was over. 3 months later a management position opened up and the development manager asked me to interview for it.

One of the best ways to get a new position is to start performing the work of that position before you have it. If you're already doing to the work you can remove the risk in figuring out if you'll be capable in the new position.

</comment></comment><comment><USER65> I would put it this way. Some positions affect the money-making capabilities of a company more than the others. Senior management has more control over the business-aspect of a company and hence this situation.

In an ideal world for programmers, the only thing a company would be bothered about is the cleverness and the programming complexity of the product and would reward its programmers more. Such a company is bound to fail in the real world.

</comment><comment><USER66> The problem with programming vs management is that at the end of the day, a programmer is at the mercy of management which may or may not be competent. You may love programming but if you are not allowed to address technical debt, have unrealistic deadlines and silly priorities you won't have fun at your job.

</comment><comment> cool-RR So... Not-likely-to-make-you-into-a-multi-millionare == Dead end?

Also: _" in 15 years he went all the way to being CEO of a $4B company. After 10 years he retired recently with mansions and cars and no worries"_

If not having any worries is your goal, I'm not sure that CEO is the right career path for you.

<comment><USER67> > After 10 years he retired recently with mansions and cars and no worries

Having no worries(at least financially) 'after' busting my ass for 10years is definitely a good career plan.

</comment></comment><comment><USER68> It should be noted that _life_ is a dead end as well.

It seems the author equates the accumulation of "things" with success. If your goal is own more stuff, I guess that would constitute success.

 _Happiness_ has always been my goal. By that metric, I'm wildly successful.

</comment><comment><USER69> After almost two decades, still like coding but want to do more management. The technical stuff is still great, but you don't get a say in the direction of the organization.

Non-technical business types don't appreciate the art and beauty, and history - of the craft.

</comment><comment><USER70> I don't care. I like to do it.

<comment><USER71> I like your answer. It is simple and objective. Why are people trying to be rich if they don't want to be rich at all? If everyone is going to be CEO, who is going to be managed?

</comment></comment><comment><USER72> Another way to say it is as a game theory: 2 programers, if one becomes a manager it is an advantage.

I agree that pay starts well (but its earned), but in a real world scenario, programming is relatively tough work with limited upside, relatively. I agree w/ OP.

</comment><comment><USER73> I disagree. In France it's the case, if you want to get a promotion and you're a programmer, you hate to move and become a manager or something else. But don't get it wrong, programming and managing or marketing are very differents positions. You can't be good at programming and bo good at managing. Like any other jobs, programming is a real one. Not just one you start with and then move to management or something else, to get more money.

I am realistic and I know most of company think programmers are replacable. But I think it can change if everybody does.

Programming is not a dead end job, if every company like google, atlassian or github does, I mean paying well their developers and treating this as a real profession.

<comment><USER54> > You can't be good at programming and bo (sic) good at managing.

I don't think they are mutually exclusive. Sure, being good at programming doesn't imply you'll be good at managing. But there are plenty of great programmers who successfully

> Programming is not a dead end job, if every company like google, atlassian > or github does, I mean paying well their developers and treating this as a > real profession.

I don't buy this. Even at Google, there is a psychological cap on how much engineers can make—you'll never see a programmer pulling in, say, $10M a year. That's the point: as a programmer, there is a society-wide cap on your pay, some level at which you will eventually plateau. As a manager, there is no such cap: you can eventually be the CEO.

</comment></comment><comment><USER74> Programming jobs are amongst the most well paid in the world. Calling them as a dead end in a comparison with CEO wages is like saying that holidays in Italy are trash, long live Hawaii.

</comment><comment><USER75> Well he's right for his life. You are what you believe. A programmer, can easily invent something that makes you a trillionaire. Ah the power of imagination and belief :)

</comment><comment><USER76> This post holds that coding and managing a company are different jobs and that you can't do both at the same time. I don't find this any kind of shocking.

</comment><comment><USER77> tldr; if your program you won't become a CEO with mansions and cars.

I became a programmer not because I wanted nice cars but because it's helping me earn enough money while doing something that doesn't annoy me too much. It helps keep my sanity.

</comment><comment><USER78> By the same logic, anything from being a plumber to a brain surgeon is a dead end job.

</comment><comment><USER79> Flipping burgers is a dead end job, programming is well paid compared to most jobs.

</comment><comment><USER80> Low quality thread on HN.

</comment><comment><USER81> _but it 's still pretty limited compared to what being an executive or manager can make_

If you're just going to arbitrarily pick some hypothetical comparison, sure, it's limited. But that isn't a useful contrast.

Most managers are in dead-end jobs themselves (the mere facet of the pyramid dictates this). _Very_ few rise higher, and are more likely to have young upstarts jump above them. Most make fairly poor pay -- I worked as a dev lead at a bank and was at a pay scale that put me above every single non senior VP or above in the entire organization.

50,000+ employees. My pay as a developer was in a band normally reserved for a small handful of executives. The very, very few who went the management route and won the lottery, so to speak.

I absolutely love this profession, and have resisted all paths that would pull me out of it. I make great money for doing something I love.

</comment><comment><USER82> If you expect to get rich working for someone else, you will be disappointed. Everywhere I've worked, things start out great. You get to work on new and exciting projects.

Then, new management comes in or your boss makes crazy development decisions and your project becomes a sinking ship. I just dropped a contract that was exactly this. I got tired of being forced to make bad decisions, which I know will lead to the failure of the project/company.

This is why I started my own company. There are no limits to my salary.

<comment><USER83> I also own my company, there is a limit to your salary in one direction, Zero.

<comment><USER84> I also own my company, zero is not a limit.

<comment><USER3> Exactly, you can go waaaaay past zero :-)

<comment><USER85> no, zero is the bottom limit. Unless you do something stupid like personal guarantees on loans or do not incorporate. Thats the point of LLCs. Limit the liability of shareholders.

Edit: I guess I should add, of course legal matters depend on location. AFAIK much of the developed world has legal structures that allow risk to be limited to the "company" and not risk the shareholders' personal assets (ie Your personal assets).

<comment><USER86> _no, zero is the bottom limit. Unless you do something stupid like personal guarantees on loans or do not incorporate. Thats the point of LLCs. Limit the liability of shareholders._

I am an owner / co-owner of 3 (US-based) LLCs, and I can tell you from experience that banks will require a personal guarantee, joint and several, of all principal owners, for any non-collateralized loan or line of credit.

The same is _generally_ true of most lessors, as well. Some (most?) tech incubators / hubs / innovation centers are the exception, and I am sure also some smaller 'mom-and-pop' lessors. But once we moved out of those, we had lessors wanting us personally guaranteeing our 3-5 year leases, although we were able to negotiate those terms away with some of them.

We were able to secure net-30 terms from suppliers, however, that did not require a personal guarantee.

Even if you managed to somehow navigate these waters without anyone requiring a personal guarantee, zero is generally not the bottom limit. If you are a founder, or an owner, you most likely have brought assets and/or money into the venture.

<comment><USER87> great post. i'll add that it's not just term debt or capital leases, but other contracts too - even your first commercial real estate lease can require a large security deposit and personal guarantee. and if you're not careful, this personal guarantee will continue carrying over even as you expand into larger and larger offices...

and of course let's not forget operational credit cards (you are exposing yourself if you don't use an amex to pay for certain things) - that's the owners'/founders' credit on the line (at least at first).

</comment></comment></comment></comment></comment></comment></comment><comment><USER88> Not only a dead end job but also 60-70 hour work weeks and having to deal with a management that's unable to comprehend what you do. Toxic culture as well.</comment>


Show HN: Safely run multiple applications on the page using Web Workers - <AUTHOR> https://github.com/pfraze/link-ap

<comment><AUTHOR> Small video that shows how it works: [http://www.youtube.com/watch?v=vAMTomxQV80&feature=plcp](http://www.youtube.com/watch?v=vAMTomxQV80&feature=plcp)

</comment><comment><USER2> Interesting concept, but there is not enough explanation as to how it is implemented, what motivates the project, and what kind of browser support is available.

<comment><AUTHOR> You're right; I'm balancing my time between writing docs and getting code out. I'll copy in a post I made recently in the unhosted mailing group:

I think silos are created in the Web by the security model of document sandboxes.

It's not possible to share a connective session between two applications without involving remote hosts. All traffic has to go out to a server to reach other tabs, and it only happens if the two hosts have channels to each other. As a result, the functional connectivity of web applications is determined by the providing services.

Put another way, I can't tell the the facebook interface to download all of my posts and hand them over to my google docs interface. I might tell the google docs server to use a protocol like OAuth to get permission for a remote session, so the docs server could download the posts from the facebook server-- but that scenario is only happening if both parties agree to and implement the channel, which is cumbersome. So as of right now, even if the facebook interface can easily grab a list of my posts, they're staying in the interface.

And it's actually a little worse than that. Even with a perfectly connective world of hosts, where every service has a channel to the other service you need, the arrangement is difficult to trust. Exactly what am I granting permission to by connecting services? How could I know? It's only vaguely apparent in the permissions interfaces, and the decisions are rarely case-by- case. "Will read all your mail and post to your feed (and communicate with its third-party host)." Great, I really want to roll the dice on that.

Again, this is because there are no permeable barriers between browser tabs for information to pass through, nor are there the tools to easily configure and safely mediate that barrier if it existed. And since we rely on domain- based security, there aren't any good tools for mediating remote connections either.

So how do we solve it? I think we need to update the browser environment to support more fine-grained connectivity and security policies, which is the purpose of LinkAP. Once you get a sandbox that can inter-communicate with other sandboxes (workers) it's a matter of setting up a strong protocol for routing messages, configuring endpoints, and enforcing security.

There are probably a lot of ways you can do it, but the choice I made was to use HTTP so that local applications can behave as invisible proxies to remotes. That allows programs to be gatekeepers to their services, usually with some permissioning tools from the environment. HTTP also allows links/forms/ajax to work as before on the in-browser apps. There are a lot more details (some still developing) but I'll leave that for another time.

The design doc gets into it more: <https://github.com/pfraze/link- ap/wiki/Design-Document></comment></comment>


Forget Shorter Showers (2009) - <AUTHOR> http://www.orionmagazine.org/index.php/articles/article/4801/ <comment><USER2> The author presents the following options:

1\. participate in the industrial economy = lose

2\. living more simply = lose

3\. stop the industrial economy = win

How about a fourth option, which includes: massive geo and atmospheric engineering, nuclear/fusion research/dissemination, desalination and water pipelines, and large-scale laboratory meat production from real animal tissue.

My understanding is that the damage we've done will take thousands of years to reverse if done naturally. If that's true, the only viable solution, and one that may even let us maintain our standard of living, is the massive all-in application of science and engineering we used to decades ago dream about and assume would naturally come.

Are we that spooked as a species that we forgot to think big, or is it simply delusional to think we can engineer the planet?

<comment><USER3> One problem here is that any outcome (warming or no, human-engineered or no) will impact every nation differently. Under current warming projections, some nations will see massive increases in arable land, whereas others will be completely underwater. Even within nations, some cities and regions will see detrimental effects, whereas others could even see benefits (though this is taboo to talk about, which foreshadows one variation of the problem).

It seems naively optimistic to think we will be able to geoengineer altruistically or with the general good in mind. Even the concept of an 'average good' for the earth is a little morally problematic if some nations benefit and others are hurt. When a nation acquires the ability to affect climate at a large scale, it seems likely that it will be used for political ends as much as for net positive outcomes.

<comment><USER4> And what makes you think that random outcomes ("natural" outcomes if you will) are any better ? I mean, didn't we stop believing in a benevolent God at some point ?

Because when I look at the green movement, my mind very quickly feels the need to point out that for the green movement to do any good at all with their pushing of nature, nature would have to be good. Nature is not good, nor is it evil, but let me point out that with very, very few exceptions murderers are not evil either (the large majority are furthering their own ends, not killing for fun or morals).

<comment><USER5> The mapping between natural features and human population/agriculture is generally near a local optimum. If a random grassland would be swapped with a random desert of the same size, from a natural viewpoint it would be nearly the same, but it would have horrible consequences for the people living there.

Any significant changes to the natural features in random direction should be expected to be harmful for us - we can be rather sure that moving 10 steps in direction A is expected to be worse than moving 1 step in direction B even if we don't know anything about the actual changes caused by those directions.

We should prefer small random changes to big changes, unless we're really, really sure that the big changes are actually beneficial.

<comment><USER4> > We should prefer small random changes to big changes, unless we're really, > really sure that the big changes are actually beneficial.

True. But natural changes in history have been anything but small.

</comment></comment></comment></comment></comment><comment><USER6> By the accounting of the article, I'm a wonderful person. I've cut back all my consumption to virtually the bare minimum, vastly below the poverty level in the US. For example I recently purchased a flight from NY to Delhi. By the accounting of the article, the only waste I produced was the (now discarded) boarding pass.

The only waste and pollution that was produced by the evil Air India corporation. And if I (and sufficiently many other consumers) were to cut back on consumption, it would have virtually no effect - those evil folks at Air India would continue burning jet fuel and polluting.

Spot the flaw? I paid Air India to pollute on my behalf. If I (+ 50% of a planeload of people) did not pay them they would not have wasted money polluting.

There are many specific cases where this is not true, agricultural water consumption being one of the most egregious. These are (economically, not politically) low hanging fruit and should be fixed. But if the article wants to argue that huge fractions of pollution fall into this category, it needs to do a lot more quantitative work.

<comment><USER7> I think the key issue is that if you stop flying, it's a net loss to you with very little marginal gain for the environment since other people will continue to fly. So only the most environmentally conscious people actually take action, and global warming goes on.

If we want things to change, I think we need to change the rules for everybody, for example with strong taxation.

<comment><USER6> That is a valid argument in favor of the article's conclusions.

</comment></comment></comment><comment><USER8> I love this essay because it challenges us[1] about things most are too polite to mention. If you feel outrage at the following, then try recognizing that as a challenge to your beliefs.[2]

1) _The third problem is that it accepts capitalism's redefinition of us from citizens to consumers. By accepting this redefinition, we reduce our potential forms of resistance to consuming and not consuming. Citizens have a much wider range of available resistance tactics, including voting, not voting, running for office, pamphleting, boycotting, organizing, lobbying, protesting ..._

Two things we[1] generally promote contribute to this:

* 'Free market' economic policy: By reducing citizens' control over the economy and businesses, and by reducing their bargaining power (i.e., via the dominance of money in elections, reduced organized labor, click-wrap agreements, etc.), we reduce people's roles to that of consumers: If you like or dislike something, all you can do is consume or not consume.

* Reduction of end-user control in technology: From hosted applications to automatic updates to eliminating confidentiality to mobile devices built for consumption and not content creation to closed systems and data, we train users to passively consume rather than to control and create. Information technology, to some significant degree, establishes the Zeitgeist of our time.

2) _So how, then, and especially with all the world at stake, have we come to accept these utterly insufficient responses?_

Climate change is putting the world at stake. How can you accept your utterly insufficient response? Whatever you are doing, it's probably utterly insufficient.[3]

It's nothing new to humanity to walk open-eyed into catastrophe. To borrow the author's analogy, now you know how people in Germany could watch Hitler rise to power and people in the West could watch him start marching across Europe, all knowing the very likely result, and do nothing about it.

[1] By "us" and "we", I mean what I imagine to be most HN readers.

[2] For the record, I like the author's questions but don't at all agree with his solution of ending modern 'industrial' society; things weren't so great before it

[3] Me too

<comment><USER9> _> By reducing citizens' control over the economy and businesses, and by reducing their bargaining power_

I agree these are bad things, but they are not the outcome of a free market. The so-called "free market" coerces people into engaging in transactions they would not choose to engage in voluntarily; that is the opposite of a free market. (Perhaps you recognize this and that's why you put "free market" in quotes.)

 _> Climate change is putting the world at stake._

This statement illustrates part of the problem: we don't all agree on which problems are "putting the world at stake". I don't think climate change is one of them; you do. We can't agree on what actions to take if we can't agree on what we're trying to accomplish.

One possible way out is to redefine the goal: instead of "stop climate change", for example, make the goal "stop burning oil and coal". That goal I can agree with, because I have other reasons to support it that don't involve climate change. Of course, then we get to argue (maybe) about whether nuclear reactors are part of how we reach the goal.

 _> I like the author's questions but don't at all agree with his solution of ending modern 'industrial' society; things weren't so great before it_

I completely agree.

</comment></comment><comment><USER10> Why does something have to be at the magnitude of 'defeat Hitler' to be worth doing?

Edit: to add a little content, personal sacrifices also make you aware of others' use. If you're limiting water and everyone in your neighbourhood has brown grass, then there's going to be pressure on the local golf course to follow suit. And plenty of business chiefs, especially in small-to-medium businesses, start applying the lessons they learn at home to their workplace as well. To characterise the equation as merely "the effort stops at your front door" is pretty misleading.

If the author wants to effect political change, there's got to be a better way to convince people than 'your individual efforts are worthless', methinks.

<comment><USER11> I don't think the article is suggesting that. What I read was that the "misdirection" about individual impact on these environmental issues is taking focus away from much larger scale issues that are not being addressed (as a result of the misdirection). The author I think implies that environmental challenges seem to be of a "defeat Hitler" magnitude...and that to face the challenge we need to make sure we're fighting on the right front.

<comment><USER10> I think the article would be better off phrased as "don't just stop here, continue the fight", though.

</comment></comment></comment><comment><USER12> The article brings up a good point. It's a good way of making us feel responsible when in fact we make little impact.

For example, the 15 largest freighters create more pollution as every single car in the world. If this is the case why aren't we trying to fix pollution on these 15 ships instead of all this nonsense with fixing individual cars? Eliminating the pollution from these industrial ships by 10% is akin to taking millions of cars off the road. Yet all we talk about is car pooling, proudest and Teslas, etc.

[http://www.industrytap.com/worlds-15-biggest-ships-create- mo...](http://www.industrytap.com/worlds-15-biggest-ships-create-more- pollution-than-all-the-cars-in-the-world/8182)

<comment><USER13> "15 largest ships in the world emit as much nitrogen oxide and sulphur oxide as the world's 760 million cars."

First step is countries ban the vessels from coming anywhere near land. I guess that keeps pollution out of sight, out of mind. Next step.... I don't know. But I'm hopeful soon enough the powerplant will be significantly greener. In the short term you can get 1 order of magnitude from regulation. In the long term it's new technology.

</comment></comment><comment><USER14> When an article says, in a casual matter of fact way:

       we'd lose some of the luxuries (like electricity)
       to which we've grown accustomed

then it has lost 99% of its potential audience. Without electricity we couldn't be much more than stone age hunter gatherers. To which my response is: NO FUCKING WAY!!!

<comment><USER15> While I certainly would not cheer on a return to a pre-electric era, electricity has only been available for 125 years or so. We have done and could do very much better than hunting and gathering in the complete absence of electricity.

</comment></comment><comment><USER13> The first part of this essay is actually really interesting. Consumers are being asked to cut back, even though the things they are cutting back are not actually the problem? Municipalities are paying $3+/sq ft to dig up lawn, if that's a pointless endeavor, then it should stop.

The second part I think is completely BS. The three options are all ridiculous. I think technology is moving very fast right now. We need tight regulation of obviously bad behavior, we need appropriate investment in infrastructure. But to some extent if you want to invest in anything just invest widely in technology.

</comment><comment><USER16> This is very true, but the fact is that I'm not interested in solving the problem. I'm satisfied with contributing less to it. The sacrifice asked of me is too much, and it seems most people think so. Would we rather have catastrophic climate change in the future if it permits our current standards of living? I think I speak for almost everyone when I answer in the affirmative.

Sure, I bike, I recycle, and I take public transit instead of driving. But I know that this doesn't change the world. It just reduces my contribution to the problem, and that is sufficient for me.

<comment><USER17> It seems to me this is the de facto situation of most environmentally conscious people. A good first step is to acknowledge that baby steps are OK as long as they are on a good trajectory, and you show people around you that you can admit the facts to yourself without immediately falling into a funk of bad conscience and apathy.

</comment></comment><comment><USER18> After reading that, the only conclusion I can draw is it's all too hard.

</comment><comment><USER19> The problem with a decentralized evolutionary economy is that it is blind to long range problems.

The solution is not to abandon the status quo. We are not smart enough to centrally plan even a small portion of it at the moment.

But rather educate the populace through solid, irrefutable facts over a period of time, until it becomes common knowledge that a particular action causes a disastrous effect.

Analogous to how smoking has receded from popular use.

</comment><comment><USER20> If you can read between the lines then you will know that the author of "inconvenient truth" mr al gore tells you to cut down on co2 emissions when he flies his private jet between McMansions that he owns from your taxes and owns a business trading co2 quotas internationally. But you prone to his propaganda peddle your little funny bike. The Chinese put online 20 new coal burning plants a week while we are shutting down ours. The chinese, ISIs, Russia, etc don't even need to do anything kick our asses. They just need to sit and patiently wait as the cancer of socialism and cultural Marxism do all the hard work for them. At the end they will just need to knock on the door of our country and the whole thing will collapse under the weight of its own stupidity.</comment>


MacroPy's Hygienic Macros in Python - <AUTHOR> https://github.com/lihaoyi/macropy#hygiene

<comment><USER2> Technically these are still unhygienic macros, because it relies on the programmer's carefulness to avoid accidental capture. Hygienic macros prevent capture by default.

Still, nice work :) It'll be great to eventually have both types of macros available.

<comment><AUTHOR> Yeah; they are waaaay more hygienic than what we started with though. For example, it is incredibly easy to "get it wrong" trying to utilize these tools to make things hygienic, but in general that should cause the macros to fail pretty quickly (`NameError`) rather than continue working unhygienically, so you're not likely to accidentally capture anything. Not perfect, but not bad (for now)

It would be great if someone who actually knows what he's doing (e.g. a Scheme `syntax-XXX` expert) could chip in with help/advice on how to proceed.

</comment></comment><comment><USER3> is "beyond 9000" some obscure(?) meme?

also, the example is confusing (well confused me), because it has two different things that have a value of 1. it would be clearer with

        func = f[_ + 100]

(for example) and changing everything else to match (imho).

cute project, though.

<comment><AUTHOR> Beyond 9000 is a (not very) obscure meme

Noted, we may change it, thanks</comment></comment>


Your GitHub Alternative - <AUTHOR> https://shop.ungleich.ch/github-alternative <comment><USER2> On the comparison with GitLab you mention we don't support IPv6. We do if you host your own.

We will enable it for GitLab.com once we're done with the migration to GCP [0].

Our pricing is per user, tiered. Not per-user and then per feature. Although I understand that's not far off from each other.[1]

[0]: [https://gitlab.com/gitlab-org/gitlab- ce/issues/47216](https://gitlab.com/gitlab-org/gitlab-ce/issues/47216)

[1]: [https://about.gitlab.com/pricing/](https://about.gitlab.com/pricing/)

<comment><USER3> Is IPv6 a driver for anyone?

<comment><USER2> I have not heard it mentioned by any user / customer / other community member in the last year, but I think it makes sense to support it.

</comment></comment></comment><comment><USER4> This is not even an article, it is an ad for a company (ungleich.ch) that provides github-like hosting services.

<comment><USER5> Indeed.

Since their product is "Private Gitlab Hosting", they only seem to provide the hosting. This is not inherently bad, but they make it look like they are much better than Gitlab.

Personally I'd rather give my money to Gitlab so support their development.

</comment></comment><comment><USER6> I'm not entirely sure why people are freaking out at this point. This is not the Microsoft of the 90s. How many of these folks are happy to use VSCode and then turn around and panic at this acquisition?

<comment><USER7> The demise of Skype was not in the 90s. There are reasons to be vary of the news, although the immediate panic is unaccounted for.

<comment><USER8> Indeed, nor was LinkedIn, Yammer etc... there is no 'new' Microsoft - that's the same old marketing spin they use every decade to try and make themselves seem 'hip' by blaming previous employees rather than changing their ugly business model and lack of ethics.

</comment></comment></comment><comment><USER9> I don't know how many people actually consider switching, but adding a few private repos to the free github plan will probably make 99% of them reconsider on the spot and even make others switch to github. I doubt MS made the aquisition for the direct profits.

</comment><comment><USER10> "Our products are designed for people who want to get things done. Smoothly and the right way[tm]. "

Interesting then that their Q&A page has been hammered to death by HN. What is this product? What does it do, apart from ipv6? What is the price?

<comment><AUTHOR> The price is now visible again - we did not expect that much traffic today, to be honest.

However stuff is all up again now.

</comment></comment><comment><USER11> It's down at the moment, but there is a snapshot: [http://web.archive.org/web/20180604095123/https://shop.ungle...](http://web.archive.org/web/20180604095123/https://shop.ungleich.ch/github- alternative)

</comment><comment> pi-victor Tried both gitlab and bitbucket as alternatives. Bibucket server is a-b-y-s-m- al. We use it at work and the UX is so clunky and backwards and for a solution that is intended for enterprise use, most of the logic in the UI/UX seems to not be directed towards a multi-user environment at all. Bitbucket cloud is more or less the same experience.

Gitlab is known to be unstable and i'll give it to them, the UI improved a bit lately, it's still pretty bad and i wouldn't say it's very much oriented towards multi user collaboration. I think the main advantage of GitHub is that it was somewhat thought of as an open source hub/portal. Where you have easy access to other projects you wouldn't find without much of a hassle. They would just surface through the help of ratings (github stars).

<comment><USER8> I agree that bitbucket aka shitbucket like all Atlassian products is a POS, but GitLab is far from unstable? We moved to GitLab (self hosted) and it's been nothing but incredibly reliable for our 120~ people organisation and we use it heavily for mission critical code control, CI/CD and internal Wikis, if it was even slightly unstable - there's no way we'd still be using it let alone raving about it.

<comment><USER12> We doubled down on Gitlab some two years ago, coming at it skeptically with our experiences from the years before that. It's come a long way, it's a great product, but maybe the initial pains are still somewhat in our memories then?

<comment><USER8> Fair enough, there were a lot of radical UX changes early on but we've never had a problem with stability / reliability, by comparison we see a number of Github outages over any given year - to be fair that's on the hosted product but I would most certainly not want to run Github 'enterprise' - it's a VM image with MySQL and a bunch of other less than desirable technologies.

</comment></comment></comment></comment><comment><USER13> Hm, I wouldn't migrate my FOSS stuff to ungleich, simply because I don't earn money with it and while I am willing to invest my free time I feel different on throwing money into it. (Company wise I can't make the decision, but I suppose the benefit over our current git-on-NFS + bugzilla + custom distributed, reproducible build system would be negligible, especially given the price for the license).

With that said: What's so much better about ungleich than rolling your own VM somewhere? For a hackathon and as an experiment I recently setup Gitlab on a fresh Arch Linux VM using the Arch gitlab package and setup was very easy. I suppose using the official way of installation makes it even easier. Do you keep the VM, OS and gitlab up-to-date? Do you do backups?

<comment><AUTHOR> I think that is a very fair point. If you have the time & fun to setup on your own, there is absolutely nothing speaking against it (many of our employees actually run their own services for fun).

In terms of maintenance: we ensure that the system and installation is up-to- date.

We offer offsite backup as an addon, too.

</comment></comment><comment><USER14> Not really an alternative I think. A VM needs management. The good thing about a cloud solution (like Github, Bitbucket) is somebody else is keeping the server up and secure.

</comment><comment><USER15> Pressed "Order Now" but I get a 500 Internal Error!

[https://shop.ungleich.ch/shop/product/private-gitlab- hosting...](https://shop.ungleich.ch/shop/product/private-gitlab-hosting-12)

> Internal Server Error

> The server encountered an internal error and was unable to complete your > request. Either the server is overloaded or there is an error in the > application.

<comment><AUTHOR> We are about to fix it - we did not expect that many hits on this system. stay tuned.

</comment></comment><comment><USER16> The site doesn't work for me. I guess HN hug of death, in which case it doesn't work as a Github alternative at all.

</comment><comment><USER17> I think their comparison is wrong. In Gitlab you don't need to pay per user. It's free and the ppu plans are for paid features. Which you still need to pay for per user with the self-hosted solution. So they only provide a managed Gitlab Core installation. I don't see any point of this. Like what am I missing here?

<comment><USER3> You can tell the marketing guy was really grasping at straws to get something on the comparison that could be considered an advantage.

</comment></comment><comment><USER18> Why not run your own Git repository server with Gogs? It's easy to install, lightweight and you own your data.

<comment><USER19> I.e. pull/merge reviews. There is a PR for it in Gitea which is still open, though.

</comment></comment><comment><USER20> this is far from professional... the website has multiple test objects activated, dummy shop items, is poorly optimized, spelling errors all over the place. also this is far away from a github alternative... all you do is start a vm and run the installer script

</comment><comment><USER21> 500 when traffic spikes, and you have the guts to name this an alternative to GitHub? Hubris.

<comment><USER22> Hubris has long since been acknowledged as a virtue and anyway, there's no need to be so rude about it!

</comment></comment><comment><USER23> Git over SSB network.

[https://git.scuttlebot.io/%25n92DiQh7ietE%2BR%2BX%2FI403LQoy...](https://git.scuttlebot.io/%25n92DiQh7ietE%2BR%2BX%2FI403LQoyf2DtR3WQfCkDKlheQU%3D.sha256)

</comment><comment><USER24> Your GitHub Alternative. Not free. DoS'ed since published in Hacker News.

</comment><comment><USER3> Nah, Gitlab all the way.

</comment><comment><AUTHOR> Sorry for the short downtime, we just added some more cores to the system so it can handle the load a bit better.

</comment><comment><AUTHOR> So HN officially surpassed any slashdot traffic that we had so far - could say we just got hn'ed.

</comment><comment><USER25> in your shop[1], i am able to buy a "test nico" item?

[1][https://shop.ungleich.ch/de_CH/shop/product/test- nico-14](https://shop.ungleich.ch/de_CH/shop/product/test-nico-14)

<comment><AUTHOR> _ahem_ not anymore. Thanks for the pointer.

</comment></comment><comment><USER26> This is not an alternative, as this is paid. Both github and gitlab offer free versions.

</comment><comment><USER27> Why don't GitHub and GitLab support IPv6?

<comment><USER28> [https://about.gitlab.com/features/#efficiency](https://about.gitlab.com/features/#efficiency)

"If you host GitLab yourself, IPv6 is supported as long as your underlying provider can support it. GitLab.com on the other hand does not support IPv6 at the moment due to limited provider support."

</comment></comment><comment><USER29> Why wouldnt I just use bitbucket?

</comment><comment><USER30> 500 ;)

<comment><USER31> It's back</comment></comment>