Hacker News new | ask | show | jobs
by grantph 4933 days ago
It's usually far more complicated than a choice of language. Most of the problems I see are related to poor technique. Especially related to accessing resources.

"Browsers" are a good example of that. Often it's not the browser but networking problems, lost packets, latency, server responses, etc. Windows frequently waits 30 seconds when accessing network resource to tell you the resource is no longer available. Painful!

In my experience, fast code is usually beautifully written. Very logical and methodical. To be an awesome developer you NEED to be a perfectionist.

AND AVOID POLLING RESOURCES! Everything should be event driven. This is a concept very few developers truly understand. Events, events, events, events!

Agree that there's also a business case. However, $150ph developer who knows techniques is worth way more than 10 $15ph programmers because they implement the right solution the first time or make sensible decisions when taking shortcuts. Worth every dollar to find people who know what they're doing! You get what you pay for! (If you know what you're looking for!)

2 comments

I know it's not always about the language choice, but it does matter too. Java for example requires easily 2 to 20 times more memory compared to c++? So why do we exchange we few fine lines of code for that memory consumption and easier cross-platform distribution?

Ugh.. Polling can seriously eat some resources for activity which really does not need to happen. :P

The worth of a programmer is completely another topic.

I disagree. If you're using Java properly then your data structures should be similar to that of C++. I've programmed assembly language, byte level machine code, C, C++, Java, C#, etc. They're all fundamentally the same. You can always use various compilers to dump to native too to overcome interpreter problems. Technique is what matters.
Duh. Of course you can use compilers to dump to native, but then why no-one is doing it? They lose the power of the jre cross-platform support, which is pretty much all of the hype of Java and argument of pretty much every developer who I have asked why they are using Java for the project instead of C++.

Yeah. I have used asm, c, c++, java, php, python, etc too. Though C# is something I will never touch because of the monstrosity developer behind it.

I should also add, polling is why I'm with the late Steve Jobs on HATING flash. Way too many Flash "designers" have NFC when it comes to good code, so they poll rape the CPU which is NOT good on mobile devices for battery life! Evil, evil Flash.