imwaqas_009 wrote:
> Can someone guide me that what can i do to improve my proramming 
> skills and to develop logics for programms
> Im a new student so please guide me something about pointers and arrays
> Send me some internet reference sites also
> Thanks 

While it is admirable that you are wanting something to do and want to 
spend your time learning C/C++, c-prog is not here to give you ideas on 
what to do.  The choice of what project to work on next is entirely up 
to you and is completely based on your personal preference, skill set, 
and interests.  The 'Links' section on the c-prog website has an entire 
category called 'Projects':

http://tech.groups.yahoo.com/group/c-prog/links/Projects_001115340703/

The links contained there are useful if you want to learn new skills by 
testing yourself or want to take on a project as a freelancer and get 
paid for work completed or perhaps you are interested in open source 
or...well, the list goes on and on.  And perhaps you fancy developing 
your own software products.

One of the most critical skills you can develop as a programmer is 
choosing for yourself what projects to work on next and how to go about 
developing those projects.  Figure out what it is that interests you 
most and then pursue the goal you set for yourself.

One thing I do that aids me greatly is keeping a list of things I want 
to do project-wise.  Whenever I come up with an idea for a software 
product, I write it down in that list right away and try to flesh it out 
somewhat so that when I return to it later I can remember why I wrote it 
down.  I also keep track of what I want to do for version releases of my 
current software products.  Basically, this is a "living list" that 
grows and shrinks over time (but it mostly just grows).

However!  When I add an item to my list, I try to make sure the idea is 
unique in some fashion.  There are so many software products out there 
that already exist that it is fairly pointless to duplicate someone 
else's effort unless there is a very good reason to do so beyond the 
"making yet another clone of XYZ" reason where the overall software is 
inferior to the product being duplicated.  Just before I go on the 
warpath to developing a new product, I do my homework.  I run hundreds 
of Google queries and visit the most popular software distribution sites 
in an attempt to find an existing product that does what I want to do. 
If it exists, even in a limited fashion, I weigh the effort involved in 
developing a competitive product versus developing other items in my 
list that are truly unique.  I've got about 50 products and product 
ideas at any given time on my list.  And, no, you can't have any of them.

[off-topic]  I've started making "living lists" for other things as 
well.  For example, Christmas lists have traditionally been a nuisance. 
  I used to get asked for the list and trying to remember on the spot 
what sort of things I wanted always ended up in getting stuff I didn't 
really want.  Now I keep a detailed list as I go along and then siphon 
off a small number of items with a wide variety of price ranges every 
year.  I've tried various tools that do list management (including the 
paper and pencil variety) and, amazingly, a plain ol' text document in 
Notepad works far better than any other mechanism.  [/off-topic]

Examples of the outcome of ideas from my living lists are the very 
products on my website.  VerifyMyPC was born from an idea on that list 
but the first attempt was a complete failure and even the latest version 
still isn't quite what I want it to be but it still works like a charm 
for my needs.  I've already caught Microsoft with its pants down using 
VerifyMyPC.  VerifyMyPC has even been labeled as the "poor man's 
tripwire" - that is, I accidentally made a lightweight Intrustion 
Detection System - not what it was intended for but some users have 
found it to be an invaluable tool as an IDS system.

Also, keep in mind, that because the market is saturated with software 
products, you probably shouldn't release your version of Tetris just 
because you wrote it.  I have thousands of software programs I've 
written but never released.  If you put your program on the Internet, 
you better be ready and capable of supporting that program.  I have too 
many products as-is.


On learning about pointers and arrays:

Learning C/C++ from a website is considered by those who know this 
industry to be the second worst way to learn C/C++.  Websites that 
attempt to teach C++ are generally written by people who are usually not 
book authors.

Learning from a book is the best way to go.

When you joined c-prog, you should have received an e-mail containing 
the group welcome message. In that message was a list of books that you 
should read. Just in case you missed the message, here is that list of 
books again and the order in which you should be reading them:

"Accelerated C++" by Koenig and Moo (ISBN #020170353X)
"Safe C++ Design Principles" by Thomas Hruska
"The C++ Standard Library" by Nicolai Josuttis (ISBN #0201379260)
"Effective C++" by Scott Meyers (ISBN #0201924889)
"More Effective C++" by Scott Meyers (ISBN #020163371X)

If you are learning or looking to learn C, consider learning C++ 
instead. It is much more versatile and offers powerful features that C 
doesn't offer. If you happen to be already reading something other than 
the books above, seriously consider supplementing or replacing your book 
with the above.

If you can't afford the books mentioned, Bruce Eckel offers "Thinking in 
C++" for free from his website:

http://mindview.net/Books/TICPP/ThinkingInCPP2e.html


And the group owner, Thomas Hruska, has generously donated his book 
"Safe C++ Design Principles" to c-prog group members for free:

http://tech.groups.yahoo.com/group/c-prog/files/Books/


Beware any C/C++ author who does not adhere closely to the ANSI C/C++ 
Standard. One very popular author is Yashavant Kanetkar who is the 
author of "Let Us C". His writing may be simple to understand however 
his code is non-ANSI Standard. Similar great writers have shown up over 
the years who tell wonderful stories but don't adhere to the Standards 
defined by the ANSI C/C++ committees.

You should also obtain at least copy of a draft copy of the ANSI C/C++ 
Standard. Draft copies are free and c-prog links to quite a few of them 
here:

http://tech.groups.yahoo.com/group/c-prog/links/Standards_001012496381/

-- 
Thomas Hruska
CubicleSoft President
Ph: 517-803-4197

*NEW* MyTaskFocus 1.1
Get on task.  Stay on task.

http://www.CubicleSoft.com/MyTaskFocus/

Reply via email to