Fear of job change
-
I've spent most of the last 10 years doing C++/MFC and now C# development for the Windows platform. With all those years, one reaches a certain level of comfort and familiarity with all the arcane bits of trivia one must know to do Windows software development. I almost lose sight of the fact that this accumulated knowledge is INCREDIBLY Microsoft-specific. In fact, I know so much about Microsoft-related stuff and so little about anything else that it makes me wonder if I even exist outside of a Microsoft universe. Now I may have an opportunity to move to a new job at a new company I won't name, ranked one of the best companies to work for in the US, but doing C++ development for the UNIX platform. There is more than a bit of fear and apprehension about that. On the good side, I'd love to work for that company. Not only is it a good place to work, but it would be a fantastic team to be a part of, a great feeling of contribution, a great learning experience. But my accumulated "wisdom" would be pretty much useless and, even scarier, would gradually fade away into whatever place all unused brain synapses go. I'm not worried about being able to learn everything I would need for the new job. In fact, I suspect that there would be far less arcane knowledge required than in Microsoft-land. It's almost as if I have become so accustomed to, even brainwashed by, doing Windows software that it is like I'm turning to the dark force, knowing that the light will gradually fade away, and I'll be left standing naked in a strange UNIX universe. Well, maybe a bit of an exageration, but such a big change is certainly a leap of ... faith, courage, I'm not sure what. I'm wondering how other software engineers handled such big shifts in focus when changing from one job to another?
I can't agree more on what you said and felt. I would make the move if it's a great company. Working for a great employer is most important. I have worked on both Unix/Linux and Windows, but mainly on Windows for past eight years. I do find that GUI programming with Unix/Linux was very painful, even with various tools. Not sure if that has been changed recently. Other than GUI, the implementation technologies are pretty much similar, networking, IPC, threading, memory management, etc. It should be easy for experienced developers like you.
Best, Jun
-
BambooMoon wrote:
But my accumulated "wisdom" would be pretty much useless...
There's no such thing. All wisdom has a purpose.
"Money talks. When my money starts to talk, I get a bill to shut it up." - Frank
"Judge not by the eye but by the heart." - Native American Proverb
DavidCrow wrote:
All wisdom has a purpose.
Good point.
Jeremy Falcon
-
led mike wrote:
That does not help end my confusion.... so what was your original point?
Your question was "Is there a big demand for that?" I said "no", what's so hard to understand about this?
led mike wrote:
I would say that statement is not entirely accurate.
Then I would say you don't know what you're talking about.
Jeremy Falcon
Jeremy Falcon wrote:
what's so hard to understand about this?
I get that part I don't know why you posted it as an answer to the OPs question. Not important I just thought I was missing something is all.
Jeremy Falcon wrote:
Then I would say you don't know what you're talking about.
That is certainly possible as my Unix experience is limited to CGI applications on BSD like 12 years ago. However that does not keep me from reading that things like file access, sockets and threading are mostly different. Also keeping in mind that most modern development is done using higher level libraries of the OS rather than ANSI C functions and would account for major differences. Am I reading a tone into your post or are you getting agitated with me? I am not trying to be difficult I was just interested in the conversation is all.
led mike
-
Jeremy Falcon wrote:
what's so hard to understand about this?
I get that part I don't know why you posted it as an answer to the OPs question. Not important I just thought I was missing something is all.
Jeremy Falcon wrote:
Then I would say you don't know what you're talking about.
That is certainly possible as my Unix experience is limited to CGI applications on BSD like 12 years ago. However that does not keep me from reading that things like file access, sockets and threading are mostly different. Also keeping in mind that most modern development is done using higher level libraries of the OS rather than ANSI C functions and would account for major differences. Am I reading a tone into your post or are you getting agitated with me? I am not trying to be difficult I was just interested in the conversation is all.
led mike
led mike wrote:
I get that part I don't know why you posted it as an answer to the OPs question. Not important I just thought I was missing something is all.
Your initial question didn't reflect this at all. And there's nothing complicated about this concept. I gave an example of how easy it can be. Where's the confusion with this?
led mike wrote:
That is certainly possible as my Unix experience is limited to CGI applications on BSD like 12 years ago. However that does not keep me from reading that things like file access, sockets and threading are mostly different.
Sorry dude, you're wrong. File access is the same. Guess what, Winsock was based on BSD Sockets. Not much different there (a few, but easy to adapt). ANSI C/C++ has CRT threading capability already, so there really isn't much difference. Yeah sure, there will be one or two little things different, but there will be no real learning curve involved with it, just looking stuff up kinda thing.
led mike wrote:
Also keeping in mind that most modern development is done using higher level libraries of the OS rather than ANSI C functions and would account for major differences.
Yeah, for GUI development, not for console dev. Which was my point if you bothered to read the post.
led mike wrote:
Am I reading a tone into your post or are you getting agitated with me? I am not trying to be difficult I was just interested in the conversation is all.
It's A: a mix of what I know of you and B: the fact you're not even reading what I'm saying. It makes it seem as if you want to argue. And I don't have time for that. You wanna talk, go on right ahead. All I ask is you bother to actually read what I'm saying.
Jeremy Falcon
-
led mike wrote:
I get that part I don't know why you posted it as an answer to the OPs question. Not important I just thought I was missing something is all.
Your initial question didn't reflect this at all. And there's nothing complicated about this concept. I gave an example of how easy it can be. Where's the confusion with this?
led mike wrote:
That is certainly possible as my Unix experience is limited to CGI applications on BSD like 12 years ago. However that does not keep me from reading that things like file access, sockets and threading are mostly different.
Sorry dude, you're wrong. File access is the same. Guess what, Winsock was based on BSD Sockets. Not much different there (a few, but easy to adapt). ANSI C/C++ has CRT threading capability already, so there really isn't much difference. Yeah sure, there will be one or two little things different, but there will be no real learning curve involved with it, just looking stuff up kinda thing.
led mike wrote:
Also keeping in mind that most modern development is done using higher level libraries of the OS rather than ANSI C functions and would account for major differences.
Yeah, for GUI development, not for console dev. Which was my point if you bothered to read the post.
led mike wrote:
Am I reading a tone into your post or are you getting agitated with me? I am not trying to be difficult I was just interested in the conversation is all.
It's A: a mix of what I know of you and B: the fact you're not even reading what I'm saying. It makes it seem as if you want to argue. And I don't have time for that. You wanna talk, go on right ahead. All I ask is you bother to actually read what I'm saying.
Jeremy Falcon
Jeremy Falcon wrote:
Sorry dude, you're wrong. File access is the same
I support the opposite idea with an example. Yes exec and spawn are standart function supported on both Windows and UNIX but a Windows user might be more used to CreatePorcess. so it will be "new" for him. And fork doesn't exist on Windows. Same could be told of open, fopen and CreateFile(), etc....
-
I've spent most of the last 10 years doing C++/MFC and now C# development for the Windows platform. With all those years, one reaches a certain level of comfort and familiarity with all the arcane bits of trivia one must know to do Windows software development. I almost lose sight of the fact that this accumulated knowledge is INCREDIBLY Microsoft-specific. In fact, I know so much about Microsoft-related stuff and so little about anything else that it makes me wonder if I even exist outside of a Microsoft universe. Now I may have an opportunity to move to a new job at a new company I won't name, ranked one of the best companies to work for in the US, but doing C++ development for the UNIX platform. There is more than a bit of fear and apprehension about that. On the good side, I'd love to work for that company. Not only is it a good place to work, but it would be a fantastic team to be a part of, a great feeling of contribution, a great learning experience. But my accumulated "wisdom" would be pretty much useless and, even scarier, would gradually fade away into whatever place all unused brain synapses go. I'm not worried about being able to learn everything I would need for the new job. In fact, I suspect that there would be far less arcane knowledge required than in Microsoft-land. It's almost as if I have become so accustomed to, even brainwashed by, doing Windows software that it is like I'm turning to the dark force, knowing that the light will gradually fade away, and I'll be left standing naked in a strange UNIX universe. Well, maybe a bit of an exageration, but such a big change is certainly a leap of ... faith, courage, I'm not sure what. I'm wondering how other software engineers handled such big shifts in focus when changing from one job to another?
-
Jeremy Falcon wrote:
Sorry dude, you're wrong. File access is the same
I support the opposite idea with an example. Yes exec and spawn are standart function supported on both Windows and UNIX but a Windows user might be more used to CreatePorcess. so it will be "new" for him. And fork doesn't exist on Windows. Same could be told of open, fopen and CreateFile(), etc....
Super Lloyd wrote:
Same could be told of open, fopen and CreateFile(), etc....
No, you're looking to argue. I said if you're used to ANSI coding there's no problem. If you've only used WinAPI you're in for a difference. Why must people argue so much here? I mean really.
Jeremy Falcon
-
Super Lloyd wrote:
Same could be told of open, fopen and CreateFile(), etc....
No, you're looking to argue. I said if you're used to ANSI coding there's no problem. If you've only used WinAPI you're in for a difference. Why must people argue so much here? I mean really.
Jeremy Falcon
Jeremy Falcon wrote:
Why must people argue so much here? I mean really.
Ask yourself, to argue you need 2 people ;P Of course ANSI works on both platform! All the guy was saying is "my win32 file would be useless", to which you replied: "bullsh*t ANSI is standart", well no suprise you started an argument ;P
-
Jeremy Falcon wrote:
Why must people argue so much here? I mean really.
Ask yourself, to argue you need 2 people ;P Of course ANSI works on both platform! All the guy was saying is "my win32 file would be useless", to which you replied: "bullsh*t ANSI is standart", well no suprise you started an argument ;P
Super Lloyd wrote:
Ask yourself, to argue you need 2 people
You only need one person to try and start an argument. Which is what you're still trying to do.
Super Lloyd wrote:
Of course ANSI works on both platform!
Then why did you even bother to post what you did at all if you were aware of this?
Super Lloyd wrote:
All the guy was saying is "my win32 file would be useless", to which you replied: "bullsh*t ANSI is standart", well no suprise you started an argument
Are you smoking something here? He said he's used to C++/MFC and C#, and not what you're quoting. I say if he's used to ANSI C/C++ then it will be an easier transition for console dev. Just how the hell did you get me saying "bullshit ANSI is standard" or anything outside of what I really did say, unless you wanted to start an argument?
Jeremy Falcon
-
Super Lloyd wrote:
Ask yourself, to argue you need 2 people
You only need one person to try and start an argument. Which is what you're still trying to do.
Super Lloyd wrote:
Of course ANSI works on both platform!
Then why did you even bother to post what you did at all if you were aware of this?
Super Lloyd wrote:
All the guy was saying is "my win32 file would be useless", to which you replied: "bullsh*t ANSI is standart", well no suprise you started an argument
Are you smoking something here? He said he's used to C++/MFC and C#, and not what you're quoting. I say if he's used to ANSI C/C++ then it will be an easier transition for console dev. Just how the hell did you get me saying "bullshit ANSI is standard" or anything outside of what I really did say, unless you wanted to start an argument?
Jeremy Falcon
Jeremy Falcon wrote:
Ask yourself, to argue you need 2 people You only need one person to try and start an argument. Which is what you're still trying to do.
Am I? :rolleyes:
Jeremy Falcon wrote:
Super Lloyd wrote: Of course ANSI works on both platform! Then why did you even bother to post what you did at all if you were aware of this?
Because I was trying to explain how the guy might feel.
Jeremy Falcon wrote:
Are you smoking something here? He said he's used to C++/MFC and C#, and not what you're quoting
Absolutely! But 1. if he were just using ANSI C after 12 year of developement he will certainly know that it would work just the same on UNIX, wouldn't he? wouldn't you? 2. Since when MFC is working on UNIX? it might, but I didn't know that... (or are you thinking of WINE here?)
-
Jeremy Falcon wrote:
Ask yourself, to argue you need 2 people You only need one person to try and start an argument. Which is what you're still trying to do.
Am I? :rolleyes:
Jeremy Falcon wrote:
Super Lloyd wrote: Of course ANSI works on both platform! Then why did you even bother to post what you did at all if you were aware of this?
Because I was trying to explain how the guy might feel.
Jeremy Falcon wrote:
Are you smoking something here? He said he's used to C++/MFC and C#, and not what you're quoting
Absolutely! But 1. if he were just using ANSI C after 12 year of developement he will certainly know that it would work just the same on UNIX, wouldn't he? wouldn't you? 2. Since when MFC is working on UNIX? it might, but I didn't know that... (or are you thinking of WINE here?)
Super Lloyd wrote:
Am I?
Tell me you're not really this thick. :sigh:
Super Lloyd wrote:
Because I was trying to explain how the guy might feel.
No, you were trying to argue. You're gonna take a stance that has no bearing on the conversation on something that may, sorta, kinda, possibly be the case is hogwash. And this only further shows you haven't a freaking clue what I'm talking about.
Super Lloyd wrote:
1. if he were just using ANSI C after 12 year of developement he will certainly know that it would work just the same on UNIX, wouldn't he? wouldn't you?
Oh dear God. Now, you want to argue so damn much you're willing to say it's the same when you at first said it wasn't. Also, do you think it's impossible for a C++/MFC coder to know ANSI functions or something?
Super Lloyd wrote:
2. Since when MFC is working on UNIX? it might, but I didn't know that... (or are you thinking of WINE here?)
This is the last straw. You're looking to argue retard. I never said MFC works on Unix. And I have a life. Go argue with the wall or something.
Jeremy Falcon
-
Super Lloyd wrote:
Am I?
Tell me you're not really this thick. :sigh:
Super Lloyd wrote:
Because I was trying to explain how the guy might feel.
No, you were trying to argue. You're gonna take a stance that has no bearing on the conversation on something that may, sorta, kinda, possibly be the case is hogwash. And this only further shows you haven't a freaking clue what I'm talking about.
Super Lloyd wrote:
1. if he were just using ANSI C after 12 year of developement he will certainly know that it would work just the same on UNIX, wouldn't he? wouldn't you?
Oh dear God. Now, you want to argue so damn much you're willing to say it's the same when you at first said it wasn't. Also, do you think it's impossible for a C++/MFC coder to know ANSI functions or something?
Super Lloyd wrote:
2. Since when MFC is working on UNIX? it might, but I didn't know that... (or are you thinking of WINE here?)
This is the last straw. You're looking to argue retard. I never said MFC works on Unix. And I have a life. Go argue with the wall or something.
Jeremy Falcon
Jeremy Falcon wrote:
Super Lloyd wrote: Am I? Tell me you're not really this thick.
uh... what are you talking about man? What the above remarks means to me is: "Can't you understand you were arguing". What I don't understand is how could you know better than me that I was arguing? Anyway, if you say so....
-
Jeremy Falcon wrote:
Super Lloyd wrote: Am I? Tell me you're not really this thick.
uh... what are you talking about man? What the above remarks means to me is: "Can't you understand you were arguing". What I don't understand is how could you know better than me that I was arguing? Anyway, if you say so....
Super Lloyd wrote:
What I don't understand is how could you know better than me that I was arguing?
Simple, you're acting stubborn. You'll refuse to believe/accept what I say just so you can argue. You change positions, just so you can agrue. You never once made a valid point, and yet you continue on just so you can argue. It's obvious to anyone with half a wit except for you. That should be a clue, but alas, that's where the stubborn part falls back into play.
Jeremy Falcon
-
led mike wrote:
I get that part I don't know why you posted it as an answer to the OPs question. Not important I just thought I was missing something is all.
Your initial question didn't reflect this at all. And there's nothing complicated about this concept. I gave an example of how easy it can be. Where's the confusion with this?
led mike wrote:
That is certainly possible as my Unix experience is limited to CGI applications on BSD like 12 years ago. However that does not keep me from reading that things like file access, sockets and threading are mostly different.
Sorry dude, you're wrong. File access is the same. Guess what, Winsock was based on BSD Sockets. Not much different there (a few, but easy to adapt). ANSI C/C++ has CRT threading capability already, so there really isn't much difference. Yeah sure, there will be one or two little things different, but there will be no real learning curve involved with it, just looking stuff up kinda thing.
led mike wrote:
Also keeping in mind that most modern development is done using higher level libraries of the OS rather than ANSI C functions and would account for major differences.
Yeah, for GUI development, not for console dev. Which was my point if you bothered to read the post.
led mike wrote:
Am I reading a tone into your post or are you getting agitated with me? I am not trying to be difficult I was just interested in the conversation is all.
It's A: a mix of what I know of you and B: the fact you're not even reading what I'm saying. It makes it seem as if you want to argue. And I don't have time for that. You wanna talk, go on right ahead. All I ask is you bother to actually read what I'm saying.
Jeremy Falcon
Jeremy Falcon wrote:
ANSI C/C++ has CRT threading capability already
Got a link? I was (perhaps wrongly) under the impression that ANSI didn't define threading, as it was platform specific.
I'd love to help, but unfortunatley I have prior commitments monitoring the length of my grass. :Andrew Bleakley:
-
Jeremy Falcon wrote:
ANSI C/C++ has CRT threading capability already
Got a link? I was (perhaps wrongly) under the impression that ANSI didn't define threading, as it was platform specific.
I'd love to help, but unfortunatley I have prior commitments monitoring the length of my grass. :Andrew Bleakley:
S Douglas wrote:
Got a link? I was (perhaps wrongly) under the impression that ANSI didn't define threading, as it was uplatform specific.
I'll be, you're right. I haven't used threading on Unix (CGI dev has been the extent of it), but was under the impression that was ANSI. I mean, there's still pthreads and posix, but I never thought about beginthread and endthread being MS specific. Good catch.
Jeremy Falcon
-
S Douglas wrote:
Got a link? I was (perhaps wrongly) under the impression that ANSI didn't define threading, as it was uplatform specific.
I'll be, you're right. I haven't used threading on Unix (CGI dev has been the extent of it), but was under the impression that was ANSI. I mean, there's still pthreads and posix, but I never thought about beginthread and endthread being MS specific. Good catch.
Jeremy Falcon
Jeremy Falcon wrote:
Good catch.
Wasn’t looking to catch anyone off guard. The last time I looked at threading on *nix it was substantially different than windows. Although things where suppose to have changed with Linux 2.6 kernel. Even still that’s on the platform not the language. Shrugs, never hurts to ask, I'm by no means an expert at well anything. :) I had quickly searched google before asking you, here is one of the results. :laugh: http://www.sizes.com/tools/thread_screw.htm[^]
Jeremy Falcon wrote:
CGI dev has been the extent of it
X| My foray into CGI dev left me wondering if it wouldn’t just be easier to print the WebPages out and mail them to people. :laugh: . Then again I was using Perl, which while very powerful is very um different.
I'd love to help, but unfortunatley I have prior commitments monitoring the length of my grass. :Andrew Bleakley:
-
Jeremy Falcon wrote:
Good catch.
Wasn’t looking to catch anyone off guard. The last time I looked at threading on *nix it was substantially different than windows. Although things where suppose to have changed with Linux 2.6 kernel. Even still that’s on the platform not the language. Shrugs, never hurts to ask, I'm by no means an expert at well anything. :) I had quickly searched google before asking you, here is one of the results. :laugh: http://www.sizes.com/tools/thread_screw.htm[^]
Jeremy Falcon wrote:
CGI dev has been the extent of it
X| My foray into CGI dev left me wondering if it wouldn’t just be easier to print the WebPages out and mail them to people. :laugh: . Then again I was using Perl, which while very powerful is very um different.
I'd love to help, but unfortunatley I have prior commitments monitoring the length of my grass. :Andrew Bleakley:
S Douglas wrote:
Wasn’t looking to catch anyone off guard.
I could tell. Or at least I thought I could, and it appears I was right.
S Douglas wrote:
I had quickly searched google before asking you, here is one of the results.
Phew. At first I was wondering what in the world a screw thread was. Glad I'm not computer illiterate at least. :-D
S Douglas wrote:
Then again I was using Perl, which while very powerful is very um different.
Well, Perl can be fun, in a masochistic sorta way.
Jeremy Falcon
-
S Douglas wrote:
Wasn’t looking to catch anyone off guard.
I could tell. Or at least I thought I could, and it appears I was right.
S Douglas wrote:
I had quickly searched google before asking you, here is one of the results.
Phew. At first I was wondering what in the world a screw thread was. Glad I'm not computer illiterate at least. :-D
S Douglas wrote:
Then again I was using Perl, which while very powerful is very um different.
Well, Perl can be fun, in a masochistic sorta way.
Jeremy Falcon
Jeremy Falcon wrote:
Or at least I thought I could, and it appears I was right.
I made sure to word that in the least threatening way. Sometimes the forum medium fails to convey the true intent. Which is fairly easy when you consider that most of human communication is done non-verbally.
Jeremy Falcon wrote:
Phew. At first I was wondering what in the world a screw thread was.
I knew what it was before looking at the link, that’s why it was so humorous (at least for me). I ran several searches don’t remember which one it showed up on.
Jeremy Falcon wrote:
Well, Perl can be fun, in a masochistic sorta way.
umm yea, that's putting it nicely. I do like shell scripting on *nix. BASH scriping is fun, perl on the other hand... :~
I'd love to help, but unfortunatley I have prior commitments monitoring the length of my grass. :Andrew Bleakley:
-
led mike wrote:
I get that part I don't know why you posted it as an answer to the OPs question. Not important I just thought I was missing something is all.
Your initial question didn't reflect this at all. And there's nothing complicated about this concept. I gave an example of how easy it can be. Where's the confusion with this?
led mike wrote:
That is certainly possible as my Unix experience is limited to CGI applications on BSD like 12 years ago. However that does not keep me from reading that things like file access, sockets and threading are mostly different.
Sorry dude, you're wrong. File access is the same. Guess what, Winsock was based on BSD Sockets. Not much different there (a few, but easy to adapt). ANSI C/C++ has CRT threading capability already, so there really isn't much difference. Yeah sure, there will be one or two little things different, but there will be no real learning curve involved with it, just looking stuff up kinda thing.
led mike wrote:
Also keeping in mind that most modern development is done using higher level libraries of the OS rather than ANSI C functions and would account for major differences.
Yeah, for GUI development, not for console dev. Which was my point if you bothered to read the post.
led mike wrote:
Am I reading a tone into your post or are you getting agitated with me? I am not trying to be difficult I was just interested in the conversation is all.
It's A: a mix of what I know of you and B: the fact you're not even reading what I'm saying. It makes it seem as if you want to argue. And I don't have time for that. You wanna talk, go on right ahead. All I ask is you bother to actually read what I'm saying.
Jeremy Falcon
I just want to argue.... bullshit. As I already stated, I questioned what you said because I have read tons of stuff like this[^] and it just does not jive with what you are saying. Maybe some guy that wrote a article published on Byte.com is wrong and you are right. How the hell am I supposed to know that. You want to get belligerent do it with someone else, I don't need any crap from you.
led mike