Hacker News new | ask | show | jobs
by Firegarden 3768 days ago
I am 36 and been contracting full time since I was 22. Really I was only an employee at my first programming job. The concern that you have is of technology stack. The concern you are alluding to is how to stay relevant when being an older person. The first concern is easy. Stick with some fundamentals. JavaScript for example is a perfect choice. By now we should all know JavaScript and another example is the Dom API’s. Those are solid gold. CSS of course and after that your good to go learn some cool framework like ReactJS. Given that you know C then C# is likey to be your best friend. I have stuck with .NET since its release in Feb 2002 and always have been a productive developer. I have used every version of Visual Studio. So after drawing a few boxes around things the world gets smaller. .NET was just ported to linux and renamed Dot Net Core 1.0 with it’s first release expected soon. So I would say .NET is as safe a bet as any. Of course there is the small challenge that .NET isn’t cool in the start-up world. That is mostly due to haters having to hate and not based on merit. So the technology choices get easier and easier if you start to zero in. Dot Net has an MVC framework which is at version 6 but I think maybe renamed to Core 1.0 as well. Your tech stack isn’t a problem. Stick with those and you will find something. As for your hourly rate I can tell you from experience the global market is making it very competitive so suck that up. As for getting too old to program that is not actually the question. The question to ask yourself is can you find and follow your excitement. We are in the golden age. There are a few leading edge sources which deal with this. I love Bashar and Abraham-Hicks. To quote Bashar “When you understand what excitement is, you'll understand why you don't have to look at every little detail to know what to do.

Your excitement is telling you that's the next thing you need to do. Following your excitement is actually the shortest path to what you want. Act on your joy to the best of your ability. If you look at all your options and realize that taking a walk or driving your car or calling a friend is the most exciting, then THAT is the thing to do. When you can take no more further action on that thing, then look around for the next exciting thing you have the greatest ability to take action on and do it.

Excitement is its own self contained kit and its own driving engine.”

4 comments

>As for your hourly rate I can tell you from experience the global market is making it very competitive so suck that up.

I haven't had much problem with this. I don't compete on price because I can't bid lower than someone who has a cost of living 10x less than mine.

One thing I've learned is that the higher your rates go, the less the global market matters. Few companies are willing to pay for $100+ an hour out of country contractors.

Even if you're not charging that much, you can always find companies who are just more comfortable with someone in country. Many companies want someone they can reasonably fly in if the need arises, or just someone who is subject to the same legal jurisdiction if things to completely wrong. IP theft is a huge problem in developing countries and legal remedies are very difficult when dealing with international disputes.

To draw a parallel, this is true in the housing market in my city: If you're competing with people for a $300k house, you will have 20-30 competing offers all in the first day the house is on the market. If you are in the $425k and up market, which has tighter requirements for getting a loan, then you will only have a few competing offers and the house may be on the market for a week before an offer is accepted.
>I haven't had much problem with this. I don't compete on price because I can't bid lower than someone who has a cost of living 10x less than mine.

The problem is that those 10x-less cost of living people can increasingly compete on quality too.

Without some sort of protection inside their own country, it's "yay" for businesses and "tough luck" for IT workers. The HB1 (or whatever) visa thing is part of that.

In the end, the situation is not good for those 10x cheaper people either, because it ensures they'll always stay 10x cheaper, as even if their country develops more, there will always be someone underdeveloped with 10x cheaper cost of living to bring their prices down too.

I agree that some labor protections are needed. However language barriers, cultural differences, and time zone gaps add enough of an overhead to communication that most companies willing to pay my rate won't hire foreign programmers just to save a bit of cash upfront.

Then you have the legal issues I mentioned. Contractors in other countries are for the most part outside the reach of US courts in the case of contract disputes.

.NET isn't cool in the start-up world because of the pricing and licensing issues. You can happily start developing a PHP+MySQL application on a used 100 EUR ThinkPad: good free IDEs are readily available (if you even need one), no licensing headaches and can start hosting it with your nearby 20 EUR/month web host with shell access.

Although the situation is changing for the better in the .NET world, the hardware cost, obfuscated licensing and pricing issues still remain. I had to buy an i5 machine with SSD and 16 GB of RAM to get the same development experience with VS2015 that I had with Netbeans on Linux with 4 GB of RAM. Also, a project in progress went for ASP.NET MVC 5 + Azure SQL on Azure and I'm afraid every day that we might get hit with some unexpected performance or insane pricing issues after the launch. Even the reddit thread on /r/dotnet wasn't very encouraging with regards to that: https://www.reddit.com/r/dotnet/comments/46rgf6/do_you_run_a...

I wouldn't lose sleep over performance problems. C#'s much faster than most of the other languages. Most of the ASP.Net MVC sites I've written have sub-50ms server responses even on tiny VPSes.

One of my old employers had 100s of installs of its VBscript, then ASP.Net, program, with a complicated salesforce-esque application that clients could customize themselves with extra code, so there was a wide range of code written by programmers of wildly differing ability. And they did all sorts of crazy stuff.

Almost all performance problems were SQL related.

In the 3 or 4 years I was there we had a bug with IIS once, some crazy specific thing, I can't remember it exactly but it would be like if you'd chose a very particular and obscure variable name and the value passed via query string was this one very particular value it would cause that thread to hang. Even that was fairly trivial to identify because a google search brought up an MSDN.

And when we were genuinely stuck by then we had some sort of partner status and could phone them up. When we were using silverlight when it first came out our technical director actually ended up chatting to one of their core programmers about a specific bug. I seem to remember this only happening with silverlight and with a very obscure tech we were using (some sort of strange clientside control that IE6 had that you wrote in vbscript that no-one really used that I honestly can't remember the name of now).

If your project depends on saving $500 on a computer (the one thing you really need to do you job, as opposed to say a carpenter who needs $5000 in equipment just as a basis), is that project really worth doing?
You willfully mixed up and misrepresented the 2 paragraphs of my post. I hope that wasn't with malicious intent, so I will clarify.

The first paragraph dealt with the 'poor college student in Eastern Europe' side of doing a project, where every dollar counts and must be scraped for. In that world, going for .NET was unheard of, but the situation is slowly changing with VSCode and vNext.

As for the second paragraph, even well-funded projects have limits. Sure, let's say the limit for cost is 50k EUR with 300 EUR/month expected hosting costs. How happy will your client be when your cloud provider changes their pricing scheme and hosting cost is now 10-100x as large? Or when the requirements change and you need to buy some $EXPENSIVE_PLUGIN for that and you are locked in with your technology stack to one provider?

Mainly speaking: why should someone make a company and build some website and fill applications and all that (always with the high possibility of rejection), when you can just do 'apt-get install <technology-stack>' or as an alternative, git-clone-configure-make-sudo-make-install for the same thing? It's all about barriers to entry.

No, but building your project in a language that currently costs 2-10x per production instance with licensing/hosting costs thrown in sure as heck can.

I love C# compared to Java but I write more Java today because I hate Windows and want no part of automating cloud deployments to Windows target servers. So maybe one day when (soon?) .Net Core gets production ready in Linux I'll make the jump- but I'm not going to vastly increase my hosting costs for a language when all of the others can be done on a cheaper, more well suited system.

x 5 developers, + unknown extras with an enterprise giant...

There's a good reason you don't hear of many new startups running on a .NET stack.

You should know that you can't say you like .NET on HN without getting a bunch of replies telling you why .NET sucks.
I don't think that's true any more - Microsoft have made lots of inroads recently that are starting to attract mindshare (Visual Studio Community is awesome and free; .net is open source etc). Even if it IS true, you should be free to call people out on it. HN needs to stay as a place where people can discuss things civilly. Disclosure: I work at a .NET shop, but am personally more interested in Python, Elixir etc
You know what sucks? Missing out on being a .net developer. We are kings in a world of peasants. Yes I said it Kings!

.NET is killer just killer.

This is fire.