Click here to monitor SSC
SQLServerCentral is supported by Red Gate Software Ltd.
 
Log in  ::  Register  ::  Not logged in
 
 
 
        
Home       Members    Calendar    Who's On


Add to briefcase 12345»»»

Learning C Expand / Collapse
Author
Message
Posted Wednesday, August 15, 2012 12:55 AM


SSC-Dedicated

SSC-DedicatedSSC-DedicatedSSC-DedicatedSSC-DedicatedSSC-DedicatedSSC-DedicatedSSC-DedicatedSSC-DedicatedSSC-DedicatedSSC-DedicatedSSC-DedicatedSSC-DedicatedSSC-Dedicated

Group: Administrators
Last Login: Yesterday @ 3:11 PM
Points: 31,368, Visits: 15,837
Comments posted to this topic are about the item Learning C






Follow me on Twitter: @way0utwest

Forum Etiquette: How to post data/code on a forum to get the best help
Post #1345140
Posted Wednesday, August 15, 2012 2:27 AM
Mr or Mrs. 500

Mr or Mrs. 500Mr or Mrs. 500Mr or Mrs. 500Mr or Mrs. 500Mr or Mrs. 500Mr or Mrs. 500Mr or Mrs. 500Mr or Mrs. 500

Group: General Forum Members
Last Login: Tuesday, December 16, 2014 1:51 AM
Points: 579, Visits: 1,255
Why C? Why not just programming skills in general? Language constructs and use are the important part. Fixing on the syntax of one language is too focused - the emphasis should be on the commonality between all languages and examples should show how various languages do the same job and how some are more suited for particular tasks than others.

Personally I've managed a computing degree and over thirty years in the software industry without touching C. Fortran, pascal, Assembler code, vb.net, cobol, php and lots of other languages (and of course SQL) but never C or C++
Post #1345163
Posted Wednesday, August 15, 2012 3:59 AM
SSC Veteran

SSC VeteranSSC VeteranSSC VeteranSSC VeteranSSC VeteranSSC VeteranSSC VeteranSSC Veteran

Group: General Forum Members
Last Login: Monday, December 8, 2014 3:17 AM
Points: 246, Visits: 384
Like P Jones, I've never used C / C++ in my 26 years in the IT industry But similar to P Jones, I cut my teeth on 6502 Assembler, Pascal, creating sprites on a Commodore 64, PEEKing and POKEing bits on a Timex Sinclair, studying operating systems and file system hashing techniques and compilers in college, etc. I've always been convinced that I am the developer / troubleshooter / manager that I am today BECAUSE I have a basic understanding of the underlying architectural principles.

In my current position, I often see technical people struggle, especially when troubleshooting a problem, simply because they don't have knowledge of or understand the underlying principles. (Which could lead to the whole degree / non-degree issue, but that is another topic. )

I agree with the general concept - where people are training for a technical computer career, that training should include topics that allow for deeper interaction/experimentation between the hardware and software. Even if you never use that particular setup in your career, the basic knowledge can be applied in many different ways. In my case, C / C++ were not the tools selected for my course of study. But the languages / courses we had gave us a broad foundation from which to launch our careers.

(My college study included these languages / courses: Pascal, 6502 Assembler, Honeywell Level 6 Assembler, APL, SNOBAL, COBOL, ADA, PL/1, FORTRAN 77, LISP, Compiler design, Dynamic System design, File System design, Operating Systems, Data structures (sorting, looping), Computer Language Design and Construction, Business Systems, plus a math minor.)
Post #1345192
Posted Wednesday, August 15, 2012 6:18 AM
SSCrazy

SSCrazySSCrazySSCrazySSCrazySSCrazySSCrazySSCrazySSCrazy

Group: General Forum Members
Last Login: 2 days ago @ 9:53 AM
Points: 2,667, Visits: 4,091
Forget C. That really teaches you very little about programming to the iron. You need to program in some sort of assembly language for that. I started out learning assembly on an IBM S/360 mainframe.

Does that make me a better Visual Studio or T-SQL programmer? Maybe. But, it makes for great stories about large decks of cards and spinning tape drives.
Post #1345227
Posted Wednesday, August 15, 2012 6:22 AM
Old Hand

Old HandOld HandOld HandOld HandOld HandOld HandOld HandOld Hand

Group: General Forum Members
Last Login: Monday, December 2, 2013 6:30 AM
Points: 346, Visits: 691
My background is programming, most of my career has been in application development. Over 30 some-odd years I've learned a wide array of languages and dialects, from C to Basic to Python to some real oddballs like MOBOL, TADS, and ADVSYS.

I would NOT recommend C as a first language--or at all. The problem with C in particular (and this applies as well to C++ with a bunch of huge additional problems) is that C is way too primative to teach beginning programming concepts. It's *too* close to the metal.

Not to mention C has horrid syntax and encourages bad habits very easily. The only language I can think of that's even worse is LISP, which is parenthetical hell.

Python is a very good first language, especially for teaching. It has simple consistant syntax and consistant language structures, including a wide array of very useful data types.

C--well, doesn't. C is a good object lesson in why higher level languages exist. :)

But then again DBAs live in T/SQL. Don't even get me started on the horror that is T/SQL...

Post #1345229
Posted Wednesday, August 15, 2012 6:52 AM


SSChampion

SSChampionSSChampionSSChampionSSChampionSSChampionSSChampionSSChampionSSChampionSSChampionSSChampion

Group: General Forum Members
Last Login: Thursday, December 18, 2014 9:58 AM
Points: 13,872, Visits: 9,600
Don't bother with C. Make everyone learn Malboge (http://en.wikipedia.org/wiki/Malbolge).

More fun that way.


- Gus "GSquared", RSVP, OODA, MAP, NMVP, FAQ, SAT, SQL, DNA, RNA, UOI, IOU, AM, PM, AD, BC, BCE, USA, UN, CF, ROFL, LOL, ETC
Property of The Thread

"Nobody knows the age of the human race, but everyone agrees it's old enough to know better." - Anon
Post #1345240
Posted Wednesday, August 15, 2012 8:16 AM


SSCrazy

SSCrazySSCrazySSCrazySSCrazySSCrazySSCrazySSCrazySSCrazy

Group: General Forum Members
Last Login: 2 days ago @ 12:49 AM
Points: 2,620, Visits: 2,467
I agree with Steve. C and C++ help to understand how to handle memory/cpu/io/other devices. They help to develop very good performance applications or batch processing.

In 1986, I started with ADVANCED COBOL 85 on Honeywell mainframe. Two years later, I started working with C and I wrote a lot of very perfomant applications on 8086 12MHZ. All other languages to follow. (C++, VB, Pascal, Assembler for 86/386, DB2, Clipper, T-SQL, HTML, XML, Powerbuilder, Javascript, C#, VB.NET)
Post #1345290
Posted Wednesday, August 15, 2012 8:16 AM


Ten Centuries

Ten CenturiesTen CenturiesTen CenturiesTen CenturiesTen CenturiesTen CenturiesTen CenturiesTen Centuries

Group: General Forum Members
Last Login: Monday, December 8, 2014 6:44 AM
Points: 1,332, Visits: 19,320
GSquared (8/15/2012)
Don't bother with C. Make everyone learn Malboge (http://en.wikipedia.org/wiki/Malbolge).

More fun that way.
It's so hard to program in, you can't even spell it...


---------------------------------------------------------
How best to post your question
How to post performance problems
Tally Table:What it is and how it replaces a loop

"stewsterl 80804 (10/16/2009)I guess when you stop and try to understand the solution provided you not only learn, but save yourself some headaches when you need to make any slight changes."
Post #1345291
Posted Wednesday, August 15, 2012 8:22 AM
Valued Member

Valued MemberValued MemberValued MemberValued MemberValued MemberValued MemberValued MemberValued Member

Group: General Forum Members
Last Login: Friday, December 12, 2014 12:46 PM
Points: 50, Visits: 553
I do think that working with more primitive languages gives you some insight that higher level languages do not. Assembler was essential at one time, even on mainframes. Not something that you used all the time, but something that you needed to know.

(I remember asking a younger, but very versatile programmer with a problem about "one's complement" and getting a blank look in return. But for that particular bug, it was essential to understanding the problem. (This was a bug with SQL Server, bcp, and datetime data from version 6.0 or 6.5.))

Anyway, regarding C, my oldest extant program was written in C about 29 years ago. Still running today. Ha.

Russell Fields

Post #1345296
Posted Wednesday, August 15, 2012 8:49 AM


Ten Centuries

Ten CenturiesTen CenturiesTen CenturiesTen CenturiesTen CenturiesTen CenturiesTen CenturiesTen Centuries

Group: General Forum Members
Last Login: Tuesday, September 16, 2014 2:03 PM
Points: 1,334, Visits: 3,069
My first programming language that I learned from the bottom up was C, and I have never regretted having that as a base programming knowledge level. A mentor of mine once said, "if you are going learn how cars tick, start with the engine, not the headlights."

"Technology is a weird thing. It brings you great gifts with one hand, and it stabs you in the back with the other. ..."
Post #1345315
« Prev Topic | Next Topic »

Add to briefcase 12345»»»

Permissions Expand / Collapse