473,397 Members | 2,099 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,397 software developers and data experts.

[Slightly OT] Pointers on shifting to Systems Programming from QA

Hi all,

At the outset, I regret having to post this slightly OT post here.
However, I strongly feel that people in this group would be the best to
advise me on my predicament.

I am working as a QA in an MNC in India, since I graduated in September
2003. I am working in a QA role which requires me to do some Winrunner
automation, and modifying/creating a framework in Perl for Automated
Regression Testing of some command Line utilities (written in C).
Although the job is financially rewarding, I am not sure I am as
satisfied with my job, and would like to move over to Systems
Programming. Since C is the defacto standard for this, I am trying to
learn C.

The problem is that since I am in QA, in am not having any 'real' feel
of systems programming. I am having access to the souce, but my job does
not require that I go through it(I am doing this on my own, though).

I would like to know what approach I should follow in getting my self a
working knowledge, so that I can present a good case for myself in an
interview.

Any pointers to projects that would help me, as well as resources
(especially online) would be helpful.

Presently I am wading through the C Faqs...and of course lurking around
this group, but since I am not really applying what I learn, it is hard
to retain or become confident in it.

Thanks and regards
AB

--

Nov 14 '05 #1
3 2456
On Tue, 20 Apr 2004 us**@domain.invalid wrote:
Hi all,

At the outset, I regret having to post this slightly OT post here.
However, I strongly feel that people in this group would be the best to
advise me on my predicament.
If this is more about you as a programmer and less about the C programming
language you might be better served posting to comp.programming.
I am working as a QA in an MNC in India, since I graduated in September
2003. I am working in a QA role which requires me to do some Winrunner
automation, and modifying/creating a framework in Perl for Automated
Regression Testing of some command Line utilities (written in C).
Although the job is financially rewarding, I am not sure I am as
satisfied with my job, and would like to move over to Systems
Programming. Since C is the defacto standard for this, I am trying to
learn C.
Seems reasonable. Not all systems are programmed in C though. Again, if
you posted to comp.programming it might get a better response. So far it
seems like you are interested in systems programming and believe this is
the same as being interested in C.
The problem is that since I am in QA, in am not having any 'real' feel
of systems programming. I am having access to the souce, but my job does
not require that I go through it(I am doing this on my own, though).
Looking at the code will tell you what that system is doing. Unless the
code is incredibly well documented a lot of the design decisions will be
missing. In other words, you will have WHAT that system is doing but you
might not be able to deduce WHY it is doing it.
I would like to know what approach I should follow in getting my self a
working knowledge, so that I can present a good case for myself in an
interview.
There are at least two things here. 1) you want to be a good C programmer
and 2) you want to be a systems programmer. If I was interviewing you for
C programming I would ask you technical questions to see that you know how
to program in C language. If the job was programming a system I would also
ask you theoretical questions about how you might design the system and
why. If I was hiring someone to be a systems programmer I would not assume
a good C programmer is a good systems programmer. Nor would I assume a
good systems programmer is going to be a good C programmer (unless they
had written a system in C previously).
Any pointers to projects that would help me, as well as resources
(especially online) would be helpful.

Presently I am wading through the C Faqs...and of course lurking around
this group, but since I am not really applying what I learn, it is hard
to retain or become confident in it.
If you want to be a good C programmer, pick something to program. Make it
something interesting but less complex than a system. Start applying what
you learn from here and the FAQ to everything you do.

Once you can program small concepts in C then learn how to design a larger
project. Hang out in comp.programming or some other newsgroup that relates
to your final goal (e.g. if you want to program DSP or embedded systems
hang out in comp.dsp and/or comp.arch.embedded).
Thanks and regards
AB

--


--
Send e-mail to: darrell at cs dot toronto dot edu
Don't send e-mail to vi************@whitehouse.gov
Nov 14 '05 #2
Hi Darrell,

Darrell Grainger wrote:
On Tue, 20 Apr 2004 us**@domain.invalid wrote:

Hi all,

At the outset, I regret having to post this slightly OT post here.
However, I strongly feel that people in this group would be the best to
advise me on my predicament.

If this is more about you as a programmer and less about the C programming
language you might be better served posting to comp.programming.

Thank you for pointing me to the appropriate group :)
I am working as a QA in an MNC in India, since I graduated in September
2003. I am working in a QA role which requires me to do some Winrunner
automation, and modifying/creating a framework in Perl for Automated
Regression Testing of some command Line utilities (written in C).
Although the job is financially rewarding, I am not sure I am as
satisfied with my job, and would like to move over to Systems
Programming. Since C is the defacto standard for this, I am trying to
learn C.

Seems reasonable. Not all systems are programmed in C though. Again, if
you posted to comp.programming it might get a better response. So far it
seems like you are interested in systems programming and believe this is
the same as being interested in C.

Actually, yes : I am interested in a career in Systems programming. My
interest in C is because, AFAIK, C is the primary language used for
system programming, and being familiar with it to a small extent, it
might help in starting with this combination.

I am really not aware of other languages used as widely as C for systems
programming. Would be great to know, though.
The problem is that since I am in QA, in am not having any 'real' feel
of systems programming. I am having access to the souce, but my job does
not require that I go through it(I am doing this on my own, though).

Looking at the code will tell you what that system is doing. Unless the
code is incredibly well documented a lot of the design decisions will be
missing. In other words, you will have WHAT that system is doing but you
might not be able to deduce WHY it is doing it.

I would like to know what approach I should follow in getting my self a
working knowledge, so that I can present a good case for myself in an
interview.

There are at least two things here. 1) you want to be a good C programmer
and 2) you want to be a systems programmer. If I was interviewing you for
C programming I would ask you technical questions to see that you know how
to program in C language. If the job was programming a system I would also
ask you theoretical questions about how you might design the system and
why. If I was hiring someone to be a systems programmer I would not assume
a good C programmer is a good systems programmer. Nor would I assume a
good systems programmer is going to be a good C programmer (unless they
had written a system in C previously).

Thanks again for an excellent demystification of my own question :)
This raises a question in my mind ..

You have mentioned that a Systems programmer is 'unattached' to a C
programmer. In this case, could you suggest how I go about learning
'systems programming', decoupled with 'C programming' ?
Any pointers to projects that would help me, as well as resources
(especially online) would be helpful.

Presently I am wading through the C Faqs...and of course lurking around
this group, but since I am not really applying what I learn, it is hard
to retain or become confident in it.

If you want to be a good C programmer, pick something to program. Make it
something interesting but less complex than a system. Start applying what
you learn from here and the FAQ to everything you do.

Once you can program small concepts in C then learn how to design a larger
project. Hang out in comp.programming or some other newsgroup that relates
to your final goal (e.g. if you want to program DSP or embedded systems
hang out in comp.dsp and/or comp.arch.embedded).

Thanks a lot !

Nov 14 '05 #3
On Wed, 21 Apr 2004, Abhinav wrote:
Hi Darrell,

Darrell Grainger wrote:
On Tue, 20 Apr 2004 us**@domain.invalid wrote:
Hi all,

At the outset, I regret having to post this slightly OT post here.
However, I strongly feel that people in this group would be the best to
advise me on my predicament.


If this is more about you as a programmer and less about the C programming
language you might be better served posting to comp.programming.


Thank you for pointing me to the appropriate group :)


I assume all future messages regarding systems programming will be
directed to comp.programming or some other appropriate newsgroup.
I am working as a QA in an MNC in India, since I graduated in September
2003. I am working in a QA role which requires me to do some Winrunner
automation, and modifying/creating a framework in Perl for Automated
Regression Testing of some command Line utilities (written in C).
Although the job is financially rewarding, I am not sure I am as
satisfied with my job, and would like to move over to Systems
Programming. Since C is the defacto standard for this, I am trying to
learn C.


Seems reasonable. Not all systems are programmed in C though. Again, if
you posted to comp.programming it might get a better response. So far it
seems like you are interested in systems programming and believe this is
the same as being interested in C.


Actually, yes : I am interested in a career in Systems programming. My
interest in C is because, AFAIK, C is the primary language used for
system programming, and being familiar with it to a small extent, it
might help in starting with this combination.

I am really not aware of other languages used as widely as C for systems
programming. Would be great to know, though.


A good majority of systems programming is in C language. Some like more
strongly typed languages. It restricts the programmer but it also protects
them as well. If you like the freedom C allows and are diligent enough not
to shoot yourself in the foot then there is no reason you cannot do
systems programming in C language.

C language is a more popular language. As such there is a lot of
documentation, tutorials, resources, etc. available for it. Unfortunately,
some is bad or misleading. Be skeptical. Ask WHY. Ask it a lot.
The problem is that since I am in QA, in am not having any 'real' feel
of systems programming. I am having access to the souce, but my job does
not require that I go through it(I am doing this on my own, though).


Looking at the code will tell you what that system is doing. Unless the
code is incredibly well documented a lot of the design decisions will be
missing. In other words, you will have WHAT that system is doing but you
might not be able to deduce WHY it is doing it.
I would like to know what approach I should follow in getting my self a
working knowledge, so that I can present a good case for myself in an
interview.


There are at least two things here. 1) you want to be a good C programmer
and 2) you want to be a systems programmer. If I was interviewing you for
C programming I would ask you technical questions to see that you know how
to program in C language. If the job was programming a system I would also
ask you theoretical questions about how you might design the system and
why. If I was hiring someone to be a systems programmer I would not assume
a good C programmer is a good systems programmer. Nor would I assume a
good systems programmer is going to be a good C programmer (unless they
had written a system in C previously).


Thanks again for an excellent demystification of my own question :)
This raises a question in my mind ..

You have mentioned that a Systems programmer is 'unattached' to a C
programmer. In this case, could you suggest how I go about learning
'systems programming', decoupled with 'C programming' ?


Not so much decoupled. There are concepts and information that does not
apply to only C language. When you write a program, any program, you need
to decide WHY you are designing it the why you are. You have to define
data structures and algorithms. This can be done with little or no
knowledge of the language you will implement the program in. For example,
the concept of a red-black tree is a standard data type. I can program
them in C because I know C. Last time I taught them I used Java and C++.

You can learn about Systems Programming independent of any particular
language. Once you actually attempt to apply what you learn you will have
to learn a language. Seems C language will be your language of choice.

I'd suggest you learn the basics of C language here and the basic concepts
of systems programming in the appropriate newsgroup. Once you the basics
down try implementing them in C.

--
Send e-mail to: darrell at cs dot toronto dot edu
Don't send e-mail to vi************@whitehouse.gov
Nov 14 '05 #4

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

6
by: Cheng Mo | last post by:
I tried in g++ sizeof(int*) siezof(long*) sizeof(Foo*)//Foo is a self-defined class They all has same size. Do all pointers have same size in a given platform with given compiler? Thanks &...
388
by: maniac | last post by:
Hey guys, I'm new here, just a simple question. I'm learning to Program in C, and I was recommended a book called, "Mastering C Pointers", just asking if any of you have read it, and if it's...
4
by: ben | last post by:
hiyer, say you've got a 32 bit int - is there a nifty way to shift that whole value right by 4 bits and at the same time collect the 4 bits that are being shifted off the edge to the right into...
79
by: Me | last post by:
Just a question/observation out of frustration. I read in depth the book by Peter Van Der Linden entitled "Expert C Programming" (Deep C Secrets). In particular the chapters entitled: 4: The...
2
by: Thomas G. Marshall | last post by:
Arthur J. O'Dwyer <ajo@nospam.andrew.cmu.edu> coughed up the following: > On Thu, 1 Jul 2004, Thomas G. Marshall wrote: >> >> Aside: I've looked repeatedly in google and for some reason cannot >>...
102
by: junky_fellow | last post by:
Can 0x0 be a valid virtual address in the address space of an application ? If it is valid, then the location pointed by a NULL pointer is also valid and application should not receive "SIGSEGV"...
4
by: Deniz Bahar | last post by:
Hello, A couple days ago my friend (OOP guy) shows me what OOP was all about in C++. This morning I figured I can do pretty much the same thing with C (by putting function pointers in...
4
by: Andy | last post by:
Hi I'm in the position where my employer might pay for courses in VB.net or even the complete MCAD certification. But I need some good arguments for learning VB.net that can relate to my current...
36
by: Shraddha | last post by:
What is mean by normalization of pointers...Where we use that?
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each...
0
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing,...
0
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.