johnfuller
> Big brand names like GM, Yahoo, Dow Jones, Walmart and Dell have all deployed Node.js and are touting its merits.
It's as if the borg is chanting node while it slaves away on its corporate machine. I bet if I asked Michael Dell what he thinks about Node, he would probably tell me to F-off.
I googled LinkedIn and the first result talked about how they replaced their Rails app with a Node app. Right, when I see an article talking about how X huge corp replaced their Scala app with Node then I might be more convinced.
We don't need to be locked into any one tool though. As we learn how to build things better we find that we can route our pipes to different boxes which handed different things rather than having one huge box handling everything.
cd deathstar git init
As other have said many times here, a six figure job in some places is just enough to possibly be compared to a middle class lifestyle elsewhere in the U.S. Go look at the database of BART salaries, and as big as their pay appears, these guys went on strike.
> WordPress does in fifteen minutes what once kept a freelancer busy for two months.
And yet, you can still easily spend two months plus on a Wordpress project. Compare what people were building then compared to what people are building now. The great thing about web development is that we can continually move up the value chain. As some components get easier, that frees us up to work on something else, always pushing the boundaries outward. As those boundaries move, we are probably creating more work to do, not less.
> Maybe you don’t think a total n00b can walk out of a nine-week training program and do your job.
That noob better learn how to learn on his / her own. Really, who learns how to be a developer from a school? I don't have a computer science background, but does a computer science degree even teach this stuff? The bottom line is that it's a relentless grind to continue to learn and build on that knowledge. Not everyone has the drive to do that. It's far easier to pay for someone to feed you knowledge and pretend that you are getting somewhere.
> To upset the labor market, one of two things needs to happen: an increase in supply, or a decrease in demand.
I don't see supply outstripping demand happening anytime soon, if ever. I have been waiting for the hordes to come for years, but this hasn't happened. I would think it would have happened by now. And demand doesn't sit still either. As other markets emerge, they eat up their local talent.Sure, this local talent may work for far less than their U.S. equivalents, but for how long? When you have cost of living in certain regions of developing nations ratcheting up to be as high as any U.S. city and companies like Alibaba hitting huge numbers, then developers in these regions will get paid. They just have a bit of catching up to do, that's why we call them "developing."
> No profession stays on top forever… just ask your recently graduated lawyer friends.
Isn't that a crazy comparison though? This article mentions how low the friction is for getting into development, and then makes this comparison with a profession with a relatively huge friction. The development industry looks nothing like law. Part of the problem there is that the law profession built walls up that technology is tearing down. The development industry has no walls.
As others have commented, this is totally market, which is detached from the actual working conditions. Can 100K really be considered overpaid in the bay area? Or is everyone making much less than 100K just crazy to live there (I don't live there, so I don't know how much you really need to make to survive there.)
I think sometimes it's hard for us to see how much we really learn over time. It seems so easy, yet have someone who has never written a line of code try to get to the point where you are at.
The $9K price tag estimate isn't too bad. That's probably cheaper than than a lot of people spend on their significant others, not counting accessories so that you can feel like you are getting some "strange" every once in a while.
Maybe this could be Apple's next big thing. I don't mind Windows, but the idea of having sex with something which has a Microsoft logo makes me not want to have sex.
ETA: What? You find it annoying when my dog humps your leg? Just wait until you meet my robot.
1. Look at the business model. Web hosting providers make a seriously small margin on their sales and their profits come from high volumes. It's difficult to add any value there.
2. You can't offer the support that the hosting company can offer. The hosting company may or may not have good support, but they can provide it 24 / 7. You have your own life and it's not worth having to respond to emergencies when you are normally unavailable. Sure, you may be able to charge for that time, but the host can probably offer that same support for no extra charge.
3. Problems with hosting can pop up at the worst times. Imagine that you have overbooked yourself, you have multiple deadlines that are just around the corner and then all of a sudden you have to deal with a hosting problem. It's bad that you have to take time away from urgent and probably better paying work to deal with that issue, but it's even worse to have to do a mental switch away from one project, deal with the hosting issue and then have to do another mental switch to get back into the project you were distracted from.
4. You could be a world class developer but a hosting issue can reflect negatively on you from the perspective of the client. A bad hosting issue can sour the overall experience that the client has with your services. Again, it's just not worth it.
5. Many developers don't have the expertise to deal with hosting issues, which means you will probably provide a worse service than the hosting company can provide.
6. Hosting is a commitment that you may not want to make. If you decide to get out of client work, then you will have to deal with migrating your clients into different hosting situations. I have seen this turn out bad for the client.
As the application developer, offer to setup the application on their hosting and offer some sort of maintenance plan for the application, not the hosting. Set the expectation for the client that the hosting provider should be the point of contact for hosting issues and that maintenance issues with the application may have a 24 - 48 hour turn-around (or whatever you feel comfortable with.) Don't even recommend a provider, or if you do, then compile a short list of good providers and have the client make the decision on which one to choose.
How many of the people in that room could say the same? What communities (or anything else) had they built? If they had built something, did they do it on their own as opposed to being someone brought in after the company was already successful? The kid probably ran circles around everyone because he was an expert (on this subject) among managers / developers / designers and anyone else who could probably do anything but run a successful community / e-commerce site.
I think about this sort of thing as a web developer. How many web developers who build client sites have actually built a successful site? How many designers really know how to design something which can sell? If you haven't done it, then you probably have no clue. But if you have been there, then you probably wouldn't be working for someone else either.
In the Philippines in the area I live I can reach a dozen stores within a 5 minute walk. These are stores people run out of their homes. They generally have a room with a barred window where people can walk up and buy basic goods.
Downtown, every parking area has numerous people who will park your scooter and they work off tips. Kids go from bar to bar selling peanuts. Vendors walk around selling fake viagra and cheap watches. People setup make-shift food carts in areas which are heavily trafficked.
Most of these people are working without any sort of license. They are hustlers doing what they need to do to get by. That's my definition of entrepreneur. If you were to survey these people using the same questions the article used, then they would get very different responses.
Don't wait for the perfect situation. Start packing your bags and look for plane tickets today. My suggestion for a great place to start is the Philippines. You can buckle down in country for 16 months on a tourist visa before you need to do a visa run, English is an official language and flights to the surrounding countries are very cheap.
This is basically my story. I had plans on doing this, which I just kept pushing out farther and farther. I also barely had any savings, which is one of the reasons why I was pushing out my plans. Then one day my situation changed, I needed to find a new place to live and I received payment on a decent invoice. I really didn't want to find a new place to live in that city, so I used the invoice to buy a plane ticket, took care of the things I needed to take care of and left the country with just enough cash left over to take care of deposits for an apartment, utilities and probably less than a month (!) of regular expenses. As soon as I got into my apartment I went right to work and built up a bit of a cushion. I probably would never have made the jump if I didn't force myself to buy that ticket.
ETA: As a freelancer with a freelancer mindset, I never view any offer as true employment. With every long term gig I give myself a general milestone to achieve and then it's time to move on. I usually get a few offers for full time remote work every year without actively looking and then I uncover a few more with minimal ground work.If I set myself to seriously look then I would find a lot more. That's with agencies which do client work and the occasional start-up. So, the work is out there, you just have to plant the seeds.
If you were able to receive one offer without looking then surely you can get another offer if you were specifically looking for another job in SF.
Though it's good to love your job, it's also important that your time in your job is financially providing something more than just a paycheck. You should be able to put money away and enjoy the time that you aren't working as well. Getting paid just enough to cover your cost of living is no fun and stressful. What do you do if they go under? If they really recognize the value that you are bringing to the table, then they should be paying you enough to make this an easy question.
It sounds to me like this offer has perked your interest for moving on and that perhaps you haven't considered this before. Perhaps you should look around for other opportunities and at least get some competing offers. Maybe you could even do something as a remote developer (just don't apply to Yahoo!) somewhere.
ETA: If you want to scratch an itch, start a side project or find an open source project to contribute to.
Hire an accountant to figure out what extra tax hit you will take working as a contractor as opposed to an employee. Whatever you would normally charge the company to work work for them - add that extra tax hit, the costs of the accountant to handle your taxes and whatever overhead costs that you will take on by working remotely vs working in their office.
Otherwise, the company you are looking to work for will likely set other demands based on whatever works best in their system. Be flexible, but make sure to add the above mentioned costs.
It's interesting that we see so many articles posted on hacker news on how to be more productive, beat procrastination and be more motivated when really this article the OP posted explains it all. In most cases you probably don't have a problem with procrastination and motivation, it's simply that you are over-extending yourself. Cut back your commitments and you fix your problem.
The one actual job I had as a web developer set the work week as 40 hours a week (8 hours a day.) This left me wondering if any developers actually work this long of a day and how they could possibly do it.
When I'm doing client work, I'm ON, all the circuit boards are lit up. I can't keep this going for more than 4 - 6 hours per day. If I work a long day, then the next day I'm drained and I have to pay off that debt.
It actually took me years to really figure this out after a life of being trained to the 40 hour work week (parents, my early work life.) The 40 hour model for work is broken.
There are a lot of articles out there for doing proper time estimation, and they are about as good or bad as all the articles for increasing productivity. That is, there isn't really a good answer for that except for seeing the same thing over and over again and knowing from that experience how long the individual parts should take. Anything I haven't seen before is just going to be a WAG (wild ass guess.)
Otherwise, I just have to be honest with myself on how I'm spending my time. Am I getting distracted a lot while working? Am I working solid days? If I need to be working six hour days but I'm routinely getting only 2 hour days of work and 4 hour days of watching cat vids, then I have a different problem.
I make sure that I'm getting real work done during my most productive hours. My most productive time is right after I get up, ridiculously early in the morning. If I'm reading hacker news during this time I can literally feel my life force draining from me. If I don't make the most of this time, then I'm losing out for the day.
Every developer has an optimum amount of productive hours per day. For me, it's four hours and I begin going downhill after that. Sure, I can spend 12 hours working, but the first four are productive and by the last two I'm a stumbling, bumbling mess, lucky that I can type out my own name. Like sleep, this is different for everyone.
Hours worked for me is like the inverse of sleep. If I use up my pool and go into reserves, then I'm that much less productive the next day. I always have to pay back my debt. So, if I'm wrong on my estimates, then working extra hours doesn't help. I just have to be honest with everyone concerned and let them know that the timeline is in trouble and needs to be extended. That's fine, communication and honesty will almost always make up for missed deadlines. Lack of honesty and communication is poison.
As a remote worker, I have the luxury of picking my hours. So, I have been slowly doing away with the idea of a weekend. If I feel super productive on a Sunday, then I need to be working. Then, if I feel unmotivated on Tuesday, I can take that day off knowing that I'm still on target for my hours worked and I didn't have to force myself and in doing so, being less productive.
A bit issue for me, especially when working on my own, is getting bogged down in an issue. Sometimes it's something that I'm having a hard time figuring out, other times it's me geeking out and trying to over-engineer something. I have trained myself to recognize the symptoms and immediately hit the alarm to have another developer come in and suggest an alternative route.
I can blame myself for letting in distractions for news and cat vids, but I have limited control over communication distractions with my team. What I try to do is get an expectation going that I have certain times during which I'm open for communication and which times I'm trying to be a productive developer. It's death for me to be spending a couple of hours in meetings during my most productive hours, much better to make myself available during times when I have already used up my productive time. That way mind numbing meetings help me get ready for naptime. ;)
I'm sure I could come up with a lot more, but this is the "off the top of my head" stream.
The sites would need to be static snapshots and piggy back off the main domain. You could direct traffic from external domains, but those domains would likely die at some point. Perhaps you could even partner with a DNS service such as CloudFlare so that users could have an option to direct traffic to your service when certain actions happen (site is down for a certain amount of time.) The domain would still die eventually though, and the links would go with it. Ultimately I'm not sure that losing links would be a big deal anyways, as links to your main domain would die off eventually as well.
This service would be sort of like a love child of Tor and archive.org except that it would specifically be setup so that your site would always have a URL to reach the site directly rather than having to do a search. Archive.org might already have a scheme where links to a site snapshot will never change, but I'm not sure about that as it's probably not the main focus of the service.
I think this would be more interesting that attempting to build a commercial service. A commercial service would probably end up being like a ponzi scheme where you would need enough new users to cover costs to pay for the old users. Archive.org and Wikipedia seem to be doing okay though, so perhaps you could go the same route as a non profit but on more typical hosting infrastructure.
Combine skills, networking and the leverage of reach (through the internet) and you might find yourself in a position where you are wondering what all the fuss is about. There is a ton of work which needs to be done out there, but too few people who have figured out how to change with the times.
Edit: In other words, things may change so much to be unrecognizable in ten years. So, networking is the only thing that you can really count on to always be important.
If the new offer was good enough to quit your current job, then you were probably ready to leave anyways.
http://swordsedge.ca/wp-content/uploads/2009/05/kingconan2.j...
Or, if you are a Dungeons and Dragons geek, you might be interested in the Throne of the Gods for a +10 in coding awesomeness among other benefits.
I think the article gets the idea of "cultural fit" wrong though. The problem is that workplace culture is different from regional culture. A developer fresh off the plane from India might be a better cultural fit for me than someone from my own local social circles.
I imagine that having an interviewer determine cultural fit might be a problem unless that interviewer is working closely with the team the developer might be working with. Perhaps a better method might be to have the developer work with the team on a probationary period before being extended a full offer.
Cultural fit is probably also more important for a small organization rather than a large one. If you have a large number of development teams, then a new developer has a better chance of fitting in somewhere as opposed to a small organization where the entire structure is rubbing elbows together.
http://www.casinomeister.com/forums/members/jstrike.html
This would also be a great place to interact with players and get their opinions / advice.
He mentions that eventually all programming jobs will be outsourced to India because Indian developers cost 1/10 of what U.S. programmers cost. But the cost of labor is controlled by supply and demand. Programmers in the U.S. cost more because demand keeps those costs high. If the demand goes up in India and lowers in the U.S. then the gap will close, especially if unemployment is 50% in the U.S.
High value will always be high in demand. "A" players will always be able to command a premium over "B" players, no matter where they are located. So, U.S.developers will have to keep moving up the value chain.
Employment may change to such a degree by 2040 that the idea of a job may no longer exist. Currently the system of K - 12 to college to job is an institution which will have to change in such a world. When this institution fades, then people will adapt and figure out a way to add value to the world. That's how we arrive to this world in the first place, and we won't stop progressing when robots take over 50% of the jobs that we have today.
Add value and money will come. That's true today and will be true in the future. Only the structures in which we deliver that value will change.