Getting started with Windows programming

Page 3 - Seeking answers? Join the AnandTech community: where nearly half-a-million members share solutions and discuss the latest tech.

Obsoleet

Platinum Member
Oct 2, 2007
2,181
1
0
As far as what's best careerwise, I still think Java and C# are going to be the big two for quite some time. There is a shortage of Java/C# devs in my city and and my company has been taking pretty much any good Java dev we can get for years.

I guess I wouldn't disagree with that. Same experience here.
I'd also note that while there does seem to be a shortage of good Java/C# devs, there's an even bigger shortage of every other kind of developer you could name.
 
Last edited:

hans007

Lifer
Feb 1, 2000
20,212
18
81
I wouldn't say that for certain, especially as far as PC gaming is concerned. Having said that, I myself am learning to use OpenGL in my code, as DirectX is somewhat too limited for my taste, being available only on Microsoft platforms and all.

Having barely etched the surface of C++ coding, I wonder what differences there are between programming x86 (Windows) and ARM(Android).

PC gaming is kind of dying too given more and more thing just focus on lowest common denominator system on chip etc. Its probably already in decline as most gaming is done in consoles / web browsing.

That said I'm a java web dev dev now. Pretty easy transition from c++. If you know c++ almost anything is an easy transition.

The place c++ is useful is for Unix and driver devs and such.

Even .net is losing popularity as people don't want to be tied to Microsoft ecosystem if they don't have to be. Myspace... was a .net shop. Gotta stay nimble in this field and choose your career transitions wisely I guess.
 
Last edited:

hans007

Lifer
Feb 1, 2000
20,212
18
81
I guess I wouldn't disagree with that. Same experience here.
I'd also note that while there does seem to be a shortage of good Java/C# devs, there's an even bigger shortage of every other kind of developer you could name.

Java is pretty hard to hire for. I'd say the "hot" jobs are front end js and html5 type stuff even though technically I don't think that type of stuff is as hard to work on as say c++. I work on it at work sometimes and it seems like its more people don't have experience on say jquery or whatever but its quick to learn. Ruby on rails was crazy hot a few years ago too but not as much now.
 

Zodiark1593

Platinum Member
Oct 21, 2012
2,230
4
81
PC gaming is kind of dying too given more and more thing just focus on lowest common denominator system on chip etc. Its probably already in decline as most gaming is done in consoles / web browsing.

That said I'm a java web dev dev now. Pretty easy transition from c++. If you know c++ almost anything is an easy transition.

The place c++ is useful is for Unix and driver devs and such.

Even .net is losing popularity as people don't want to be tied to Microsoft ecosystem if they don't have to be. Myspace... was a .net shop. Gotta stay nimble in this field and choose your career transitions wisely I guess.
I'd have to disagree with the "PC gaming is dying" sentiment. It's far more niche than consoles or mobile, but quite away from dying as well. Fire up some L4D2, a couple mods, some friends, and have some lols. Contrary to a few elitists, graphics aren't exactly the sole reason to step to PC gaming either. For god sake, I'm rolling a Radeon 6370M (wanna ask "can it run Crysis?").

Anyway, I'm programming for a hobby, not a career, and considering the time I've already invested in C++, I'm not exactly keen on moving onto another language unless forced to. So for the time being, I'll stick to C++.
 

Obsoleet

Platinum Member
Oct 2, 2007
2,181
1
0
Java is pretty hard to hire for. I'd say the "hot" jobs are front end js and html5 type stuff even though technically I don't think that type of stuff is as hard to work on as say c++. I work on it at work sometimes and it seems like its more people don't have experience on say jquery or whatever but its quick to learn. Ruby on rails was crazy hot a few years ago too but not as much now.

I agree. Java seems to have a higher level of entry due to the scope of the ecosystem. I wouldn't start in on that today.. due to that and there's just more exciting technologies out there (and TONS of it). Same with C#/.Net.

Regarding PC gaming, you are right in that Windows specific code is 'dead' there too IMO. I think we're at a moment of flux or change in gaming.. but PC gaming is stronger today than it has been at points in the past 30 years.

I think we'll see PC (mouse and keyboard) gaming rely less on Windows and migrate to all 3 main desktop environments (Windows, OSX, Ubuntu).

While Windows will decline even in gaming, overall developers will move towards crossplatform titles.
This is just the way I see things, which is more towards OGL rather than D3D. I wouldn't put a dime of effort into D3D or anything Windows specific if making a game today.

Not to mention, if you want to ride the mobile wave with a slightly altered version- OGL is the KING there. It's also used with many consoles as well to my knowledge (PS3 at least). Outside of the Xbox, MS is so pigeonholed into corporate it's stupidly ridiculous.
Now please, don't take this as disrespect towards VS or C#. I do think both are great as well, it has nothing to do with the state of the market.
 
Last edited:

Obsoleet

Platinum Member
Oct 2, 2007
2,181
1
0
Anyway, I'm programming for a hobby, not a career, and considering the time I've already invested in C++, I'm not exactly keen on moving onto another language unless forced to. So for the time being, I'll stick to C++.

I don't know C++, but if I could snap my fingers and be an expert on anything it would be writing C++ code on Linux. Only thing I've messed with at all in that league is a bit of C.
So I certainly wouldn't shift gears unless it was to pickup a very high level language to fit nicely alongside C++. Such as my preference, Python. Lua would probably be an even better choice, and less effort.

C#'s fate is (pretty much) tied to .Net and MS. We'll see about Mono <- I'm very optimistic on this and the only reason I don't completely attack the existence of MS's corporate ecosystem.
C++ is in no danger of going away.
 
Last edited:

Zodiark1593

Platinum Member
Oct 21, 2012
2,230
4
81
I agree. Java seems to have a higher level of entry due to the scope of the ecosystem. I wouldn't start in on that today.. due to that and there's just more exciting technologies out there (and TONS of it). Same with C#/.Net.

Regarding PC gaming, I think we're at a moment of flux or change in gaming.. but PC gaming is stronger today than it has been at points in the past 30 years.

I think we'll see PC (mouse and keyboard) gaming rely less on Windows and migrate to all 3 main desktop environments (Windows, OSX, Ubuntu).

While Windows will decline even in gaming, overall developers will move towards crossplatform titles.
This is just the way I see things, which is more towards OGL rather than D3D. I wouldn't put a dime of effort into D3D or anything Windows specific if making a game today.

Not to mention, if you want to ride the mobile wave with a slightly altered version- OGL is the KING there. It's also used with many consoles as well to my knowledge (PS3 at least). Outside of the Xbox, MS is so pigeonholed into corporate it's stupidly ridiculous.
Now please, don't take this as disrespect towards VS or C#. I do think both are great as well, it has nothing to do with the state of the market.
So far as I know, OpenGL is used in just about anything current that can render graphics except perhaps the Xbox (though, I think there are at least one or two games that use OpenGL even then). It somewhat used on the PC as well, Minecraft being a popular example.
 

Obsoleet

Platinum Member
Oct 2, 2007
2,181
1
0
Rage is the best looking (confirmed) OGL title on PC. Also Heroes of Newerth and Serious Sam 3 might use OGL in their Windows versions but I think they use DX for Windows and their OSX/Linux versions use OGL. I'd personally treat Windows as the outlier, because it is and wouldn't touch a non cross platform engine. That said like most things its easier to do it for and with Windows tools.. there's more people out there that can work on it.

It's not hard to find a C# programmer, I know plenty (I could fill that role myself). I'm not sure I personally know a C++ OGL programmer though.

The gaming parallel is a fair comparison to the OP's question about Windows programming. Windows specific code is just a bad idea unless you're so good at it and been doing it for so long that doing it another way would be 5x the work. Making a desktop crossplatform has its own challenges due to the differences for input latency and network stack. I'd be interested how people have dealt with those differences across platforms, but once you did answer those questions and get a framework hammered out that deals with it- you'd be in a much better position than your competitors going forward.
 
Last edited:

WaitingForNehalem

Platinum Member
Aug 24, 2008
2,497
0
71
Rage is the best looking (confirmed) OGL title on PC. Also Heroes of Newerth and Serious Sam 3 might use OGL in their Windows versions but I think they use DX for Windows and their OSX/Linux versions use OGL. I'd personally treat Windows as the outlier, because it is and wouldn't touch a non cross platform engine. That said like most things its easier to do it for and with Windows tools.. there's more people out there that can work on it.

It's not hard to find a C# programmer, I know plenty (I could fill that role myself). I'm not sure I personally know a C++ OGL programmer though.

The gaming parallel is a fair comparison to the OP's question about Windows programming. Windows specific code is just a bad idea unless you're so good at it and been doing it for so long that doing it another way would be 5x the work. Making a desktop crossplatform has its own challenges due to the differences for input latency and network stack. I'd be interested how people have dealt with those differences across platforms, but once you did answer those questions and get a framework hammered out that deals with it- you'd be in a much better position than your competitors going forward.

I'm not sure why you have such hatred for Microsoft but saying things like learning .NET will lead you to a dead end is pure garbage. To suggest learning Apple's ecosystem over Microsoft's clearly shows you have an agenda. Visual Studio and .NET are an absolute joy to work with and nothing comes close. OP, give Visual Studio and any of the .NET languages a try, you'll hate programming with anything else.
 

Obsoleet

Platinum Member
Oct 2, 2007
2,181
1
0
So suggesting Apple's ecosystem over MS is garbage, but the opposite isn't true? Hmm.
No hatred.. most people here actually agreed with me that's the way the winds are blowing. Not that I need people to agree to validate anything, I work a fulltime job in the field.. I'm actually career-locked with MS myself. I'd say a knee jerk reaction like yours is more telling of your own insecurities than mine.

I'd def learn Apple's ecosystem over MS's.. no agenda just being honest on how I see it. That said, I don't know ObjC. I only use crossplatform technologies myself. No way am I paying to any corporation my efforts and time.. if I were though, I'd go to the top for money earning potential and nothing else (Apple). That's just being a good capitalist and in your own self interests. I feel what's best in the end-users interests are opensource, free, and free of corporate control. But if you're going for money, don't screw around with MS.. go for the big fish and sell to a growing consumer segment.

.Net and anything else that's Windows specific is dead. Ok, back to doing some Python!
 
Last edited:

Zodiark1593

Platinum Member
Oct 21, 2012
2,230
4
81
So suggesting Apple's ecosystem over MS is garbage, but the opposite isn't true? Hmm.
No hatred.. most people here actually agreed with me that's the way the winds are blowing. Not that I need people to agree to validate anything, I work a fulltime job in the field.. I'm actually career-locked with MS myself. I'd say a knee jerk reaction like yours is more telling of your own insecurities than mine.

I'd def learn Apple's ecosystem over MS's.. no agenda just being honest on how I see it. That said, I don't know ObjC. I only use crossplatform technologies myself. No way am I paying to any corporation my efforts and time.. if I were though, I'd go to the top for money earning potential and nothing else (Apple). That's just being a good capitalist and in your own self interests. I feel what's best in the end-users interests are opensource, free, and free of corporate control. But if you're going for money, don't screw around with MS.. go for the big fish and sell to a growing consumer segment.

.Net and anything else that's Windows specific is dead. Ok, back to doing some Python!
Ehh, considering my friend wants me to make a quick app for her iPad, I'd probably bother with the Apple ecosystem, if it wasn't for the requirements for a Mac.

I suppose I could go Hackintosh if I really want to though.
 

Sureshot324

Diamond Member
Feb 4, 2003
3,370
0
71
So suggesting Apple's ecosystem over MS is garbage, but the opposite isn't true? Hmm.
No hatred.. most people here actually agreed with me that's the way the winds are blowing. Not that I need people to agree to validate anything, I work a fulltime job in the field.. I'm actually career-locked with MS myself. I'd say a knee jerk reaction like yours is more telling of your own insecurities than mine.

I'd def learn Apple's ecosystem over MS's.. no agenda just being honest on how I see it. That said, I don't know ObjC. I only use crossplatform technologies myself. No way am I paying to any corporation my efforts and time.. if I were though, I'd go to the top for money earning potential and nothing else (Apple). That's just being a good capitalist and in your own self interests. I feel what's best in the end-users interests are opensource, free, and free of corporate control. But if you're going for money, don't screw around with MS.. go for the big fish and sell to a growing consumer segment.

.Net and anything else that's Windows specific is dead. Ok, back to doing some Python!

Im not anti Apple, but I really don't agree learning objective c and apple platforms has the best money making potential. Apple is a consumer company that has very little presence in the corporate world. These days there just isn't much money in consumer software, except maybe games. Corps are increasingly using iphones and iPads, but mobile apps in general are a fad that will soon be replaced by mobile web apps, just like they were on the desktop. Even if that doesn't happen, objective c pretty much limits you to client side programming, since nobody uses apple for servers.
 

Markbnj

Elite Member <br>Moderator Emeritus
Moderator
Sep 16, 2005
15,682
14
81
www.markbetz.net
As far as I'm concerned the only meaningful measurement is who's hiring for what. I considered switching to Python a year ago when I was dabbling in it, but when I checked the market for our area on Dice it didn't seem that promising compared to .NET.
 

hans007

Lifer
Feb 1, 2000
20,212
18
81
.
I agree. Java seems to have a higher level of entry due to the scope of the ecosystem. I wouldn't start in on that today.. due to that and there's just more exciting technologies out there (and TONS of it). Same with C#/.Net.
I was a c++ dev on windows for 5 years. Wrote 1 android app for fun and toyed with java randomly which got me hired somehow a year ago to write front end javascript and mid tier / back end web services in java on spring framework .

I had like no experience. It wasn't that hard. Website I work on was built from ground up to replace an ancient asp 3 VB script one. Its a big ecosystem but I think the parts are pretty easy to pick up. I suppose other stuff is even easier though. Ive coded some ruby and php at other jobs for side projects and you can learn to be useful at those two inside of a couple weeks if you are smart. So j wouldn't say java or c# arent worth starting in. They are better languages feature wise than some of the "hot" stuff so it makes you a much better programmer when you work on those other languages
 
Last edited:

Obsoleet

Platinum Member
Oct 2, 2007
2,181
1
0
I get the feeling because I'm anti-vendor lock, and even more so anti-MS now that they are no longer the great poobah.. that because I prefer Python to most other choices for general programming (though of course the right tool for the right job is always the answer).. doesn't mean I'm pitting C#/MS vs Python.

Though, if I were to go down that route as some of the responses seem to be suggesting.. I'd pick Python everyday.. because I do. For my metrics of what matters: open, free, RAD, uncontrolled by a single-source, crossplatform, versatile.. Python kicks the crap out of C# in most of those areas which are important to ME.
For me, there is hardly a single alternative for general use. C# on Mono would be 2nd on my list though, but it's a distant second.

Now for the OP, maybe he doesn't see value in those things. If not, C# or (better yet) ObjectiveC is the best way to go. I see these corporate backed languages and platforms as becoming part of the past. There's not much the community can't put together or do anymore.

Also, regarding the popularity of languages.. anything in the top 10 is pretty strong. http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html I don't see any evidence in this thread of their metrics being debunked at all.
Someone said that the top 5 are all C-derived. That's true, but what was misconstrued was that since many also have 'C' in the name, they think the search results were off.. that's obviously false because Java is #2 and does not contain 'C'.
I understand the results at tiobe scare many who don't see their chosen tech at the top of the list.. but it's worth taking for what it is. It is more definitive than people's anecdotal experience, but says nothing about actual jobs.

Living in Chicago I can tell you that ANY coder is taken and there are jobs for every language and platform. Most cities are going to be heavy on C#/.Net stuff for run-of-the-mill jobs and speaking for my own city, that's no different here.
 

WaitingForNehalem

Platinum Member
Aug 24, 2008
2,497
0
71
I get the feeling because I'm anti-vendor lock, and even more so anti-MS now that they are no longer the great poobah...

Thanks for finally admitting it. No sane person would recommend Objective C over C# for Windows programming (what the OP asked for even though you keep on ignoring that), or any non-Apple environment for that matter.
 
sale-70-410-exam    | Exam-200-125-pdf    | we-sale-70-410-exam    | hot-sale-70-410-exam    | Latest-exam-700-603-Dumps    | Dumps-98-363-exams-date    | Certs-200-125-date    | Dumps-300-075-exams-date    | hot-sale-book-C8010-726-book    | Hot-Sale-200-310-Exam    | Exam-Description-200-310-dumps?    | hot-sale-book-200-125-book    | Latest-Updated-300-209-Exam    | Dumps-210-260-exams-date    | Download-200-125-Exam-PDF    | Exam-Description-300-101-dumps    | Certs-300-101-date    | Hot-Sale-300-075-Exam    | Latest-exam-200-125-Dumps    | Exam-Description-200-125-dumps    | Latest-Updated-300-075-Exam    | hot-sale-book-210-260-book    | Dumps-200-901-exams-date    | Certs-200-901-date    | Latest-exam-1Z0-062-Dumps    | Hot-Sale-1Z0-062-Exam    | Certs-CSSLP-date    | 100%-Pass-70-383-Exams    | Latest-JN0-360-real-exam-questions    | 100%-Pass-4A0-100-Real-Exam-Questions    | Dumps-300-135-exams-date    | Passed-200-105-Tech-Exams    | Latest-Updated-200-310-Exam    | Download-300-070-Exam-PDF    | Hot-Sale-JN0-360-Exam    | 100%-Pass-JN0-360-Exams    | 100%-Pass-JN0-360-Real-Exam-Questions    | Dumps-JN0-360-exams-date    | Exam-Description-1Z0-876-dumps    | Latest-exam-1Z0-876-Dumps    | Dumps-HPE0-Y53-exams-date    | 2017-Latest-HPE0-Y53-Exam    | 100%-Pass-HPE0-Y53-Real-Exam-Questions    | Pass-4A0-100-Exam    | Latest-4A0-100-Questions    | Dumps-98-365-exams-date    | 2017-Latest-98-365-Exam    | 100%-Pass-VCS-254-Exams    | 2017-Latest-VCS-273-Exam    | Dumps-200-355-exams-date    | 2017-Latest-300-320-Exam    | Pass-300-101-Exam    | 100%-Pass-300-115-Exams    |
http://www.portvapes.co.uk/    | http://www.portvapes.co.uk/    |